Skip to content

存在自定义对象时报异常如果能够提示出是哪个字段就好了 #68

Description

@showyearn

如下异常我虽然知道了是成员变量类型为自定义对象的问题,但是需要人工逐个去排查哪个字段也挺麻烦的,如果在异常信息里能提示出来是哪个字段名定位就比较高效了。

java.lang.StackOverflowError
at sun.reflect.generics.parser.SignatureParser.parseClassTypeSignature(SignatureParser.java:307)
at sun.reflect.generics.parser.SignatureParser.parseFieldTypeSignature(SignatureParser.java:289)
at sun.reflect.generics.parser.SignatureParser.parseFieldTypeSignature(SignatureParser.java:283)
at sun.reflect.generics.parser.SignatureParser.parseTypeArgument(SignatureParser.java:436)
at sun.reflect.generics.parser.SignatureParser.parseTypeArguments(SignatureParser.java:396)
at sun.reflect.generics.parser.SignatureParser.parsePackageNameAndSimpleClassTypeSignature(SignatureParser.java:346)
at sun.reflect.generics.parser.SignatureParser.parseClassTypeSignature(SignatureParser.java:310)
at sun.reflect.generics.parser.SignatureParser.parseFieldTypeSignature(SignatureParser.java:289)
at sun.reflect.generics.parser.SignatureParser.parseFieldTypeSignature(SignatureParser.java:283)
at sun.reflect.generics.parser.SignatureParser.parseTypeSignature(SignatureParser.java:485)
at sun.reflect.generics.parser.SignatureParser.parseTypeSig(SignatureParser.java:188)
at sun.reflect.generics.repository.FieldRepository.parse(FieldRepository.java:52)
at sun.reflect.generics.repository.FieldRepository.parse(FieldRepository.java:42)
at sun.reflect.generics.repository.AbstractRepository.(AbstractRepository.java:74)
at sun.reflect.generics.repository.FieldRepository.(FieldRepository.java:48)
at sun.reflect.generics.repository.FieldRepository.make(FieldRepository.java:66)
at java.lang.reflect.Field.getGenericInfo(Field.java:105)
at java.lang.reflect.Field.getGenericType(Field.java:247)
at com.github.jsonzou.jmockdata.mocker.BeanMocker.setFieldValueByFieldAccessible(BeanMocker.java:67)
at com.github.jsonzou.jmockdata.mocker.BeanMocker.mock(BeanMocker.java:44)
at com.github.jsonzou.jmockdata.mocker.ClassMocker.mock(ClassMocker.java:38)
at com.github.jsonzou.jmockdata.mocker.BaseMocker.mock(BaseMocker.java:35)
at com.github.jsonzou.jmockdata.mocker.CollectionMocker.mock(CollectionMocker.java:38)
at com.github.jsonzou.jmockdata.mocker.ClassMocker.mock(ClassMocker.java:38)
at com.github.jsonzou.jmockdata.mocker.BaseMocker.mock(BaseMocker.java:35)
at com.github.jsonzou.jmockdata.mocker.GenericMocker.mock(GenericMocker.java:21)
at com.github.jsonzou.jmockdata.mocker.BaseMocker.mock(BaseMocker.java:35)
at com.github.jsonzou.jmockdata.mocker.BeanMocker.setFieldValueByFieldAccessible(BeanMocker.java:67)
at com.github.jsonzou.jmockdata.mocker.BeanMocker.mock(BeanMocker.java:44)
at com.github.jsonzou.jmockdata.mocker.ClassMocker.mock(ClassMocker.java:38)
at com.github.jsonzou.jmockdata.mocker.BaseMocker.mock(BaseMocker.java:35)
at com.github.jsonzou.jmockdata.mocker.CollectionMocker.mock(CollectionMocker.java:38)
at com.github.jsonzou.jmockdata.mocker.ClassMocker.mock(ClassMocker.java:38)
at com.github.jsonzou.jmockdata.mocker.BaseMocker.mock(BaseMocker.java:35)
at com.github.jsonzou.jmockdata.mocker.GenericMocker.mock(GenericMocker.java:21)
at com.github.jsonzou.jmockdata.mocker.BaseMocker.mock(BaseMocker.java:35)
at com.github.jsonzou.jmockdata.mocker.BeanMocker.setFieldValueByFieldAccessible(BeanMocker.java:67)
at com.github.jsonzou.jmockdata.mocker.BeanMocker.mock(BeanMocker.java:44)
at com.github.jsonzou.jmockdata.mocker.ClassMocker.mock(ClassMocker.java:38)
at com.github.jsonzou.jmockdata.mocker.BaseMocker.mock(BaseMocker.java:35)
at com.github.jsonzou.jmockdata.mocker.CollectionMocker.mock(CollectionMocker.java:38)
at com.github.jsonzou.jmockdata.mocker.ClassMocker.mock(ClassMocker.java:38)
at com.github.jsonzou.jmockdata.mocker.BaseMocker.mock(BaseMocker.java:35)
at com.github.jsonzou.jmockdata.mocker.GenericMocker.mock(GenericMocker.java:21)
at com.github.jsonzou.jmockdata.mocker.BaseMocker.mock(BaseMocker.java:35)
at com.github.jsonzou.jmockdata.mocker.BeanMocker.setFieldValueByFieldAccessible(BeanMocker.java:67)
at com.github.jsonzou.jmockdata.mocker.BeanMocker.mock(BeanMocker.java:44)
at com.github.jsonzou.jmockdata.mocker.ClassMocker.mock(ClassMocker.java:38)
at com.github.jsonzou.jmockdata.mocker.BaseMocker.mock(BaseMocker.java:35)
at com.github.jsonzou.jmockdata.mocker.CollectionMocker.mock(CollectionMocker.java:38)
at com.github.jsonzou.jmockdata.mocker.ClassMocker.mock(ClassMocker.java:38)
at com.github.jsonzou.jmockdata.mocker.BaseMocker.mock(BaseMocker.java:35)
at com.github.jsonzou.jmockdata.mocker.GenericMocker.mock(GenericMocker.java:21)
at com.github.jsonzou.jmockdata.mocker.BaseMocker.mock(BaseMocker.java:35)
...

Process finished with exit code -1

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions