Ebean не работает с аннотацией jakson в java - PullRequest
2 голосов
/ 09 марта 2020

У меня есть класс:

@Entity
@Data
@Builder(toBuilder = true)
@AllArgsConstructor
@NoArgsConstructor
public class Users extends Model {
    @Id
    private String id;
    private String fullName;
    private String country;
    private Role role;

    public enum Role {
        USER;

        @Override
        @DbEnumValue
        public String toString() {
            return name().toLowerCase();
        }
    }
}

Это хорошо работает, но если я добавлю аннотацию Джексона @JsonFormat(shape = OBJECT) для enum, у меня будет ошибка

@Entity
@Data
@Builder(toBuilder = true)
@AllArgsConstructor
@NoArgsConstructor
public class Users extends Model {
    @Id
    private String id;
    private String fullName;
    private String country;
    private Role role;

    @JsonFormat(shape = OBJECT)
    public enum Role {
        USER;

        @Override
        @DbEnumValue
        public String toString() {
            return name().toLowerCase();
        }
    }
}

Ошибка:

Caused by: io.ebean.config.BeanNotEnhancedException: Bean class ...Users is not enhanced? Check packages specified in ebean.mf. If you are running in IDEA or Eclipse check that the enhancement plugin is installed. See https://ebean.io/docs/trouble-shooting#not-enhanced
    at io.ebeaninternal.server.deploy.BeanDescriptorManager.setEntityBeanClass(BeanDescriptorManager.java:1569)
    at io.ebeaninternal.server.deploy.BeanDescriptorManager.createByteCode(BeanDescriptorManager.java:1434)
    at io.ebeaninternal.server.deploy.BeanDescriptorManager.readDeployAssociations(BeanDescriptorManager.java:1343)
    at io.ebeaninternal.server.deploy.BeanDescriptorManager.readEntityDeploymentAssociations(BeanDescriptorManager.java:761)
    at io.ebeaninternal.server.deploy.BeanDescriptorManager.deploy(BeanDescriptorManager.java:365)
    at io.ebeaninternal.server.core.InternalConfiguration.<init>(InternalConfiguration.java:208)
    at io.ebeaninternal.server.core.DefaultContainer.createServer(DefaultContainer.java:120)
    at io.ebeaninternal.server.core.DefaultContainer.createServer(DefaultContainer.java:36)
    at io.ebean.EbeanServerFactory.createInternal(EbeanServerFactory.java:109)
    at io.ebean.EbeanServerFactory.create(EbeanServerFactory.java:70)

Используйте ebean - 12.1.10, jakson - 2.10.1

Можете ли вы помочь мне, как я могу решить эту проблему

...