Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/gwt/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 夸克斯和杰克逊的奇怪龙目羚行为_Java_Lombok_Quarkus - Fatal编程技术网

Java 夸克斯和杰克逊的奇怪龙目羚行为

Java 夸克斯和杰克逊的奇怪龙目羚行为,java,lombok,quarkus,Java,Lombok,Quarkus,现在我面临一个奇怪的问题。我在Quarkus项目中使用lombok自动生成getter、setter等。当我将Quarkus编译为本机映像时,Jackson拒绝序列化Lombok数据对象,但序列化另一个数据对象时没有问题 更奇怪的是,只有在编译本机二进制文件并将其嵌入容器时,才会发生此错误。在“quarkus:dev”概要文件中运行这两个示例是完美的 此类中的对象将被序列化: @数据 @实体 @建筑商 @诺尔格构装师 @AllArgsConstructor @表(name=“账户”) 公共类会计

现在我面临一个奇怪的问题。我在Quarkus项目中使用lombok自动生成getter、setter等。当我将Quarkus编译为本机映像时,Jackson拒绝序列化Lombok数据对象,但序列化另一个数据对象时没有问题

更奇怪的是,只有在编译本机二进制文件并将其嵌入容器时,才会发生此错误。在“quarkus:dev”概要文件中运行这两个示例是完美的

此类中的对象将被序列化:

@数据
@实体
@建筑商
@诺尔格构装师
@AllArgsConstructor
@表(name=“账户”)
公共类会计实体{
@身份证
@GeneratedValue(generator=“UUID”)
@GenericGenerator(name=“UUID”,strategy=“org.hibernate.id.UUIDGenerator”)
@列(name=“id”,updateable=false,nullable=false)
私有UUID;
@列(unique=true,name=“username”,nullable=false)
私有字符串用户名;
@列(unique=true,name=“mail”,nullable=false)
私人字符串邮件;
@列(name=“password”,null=false)
私有字符串密码;
}
此类中的对象无法获取:

@Getter
@AllArgsConstructor
公共类登录响应{
私有最终字符串令牌;
}
错误消息:

com.fasterxml.jackson.databind.exc.InvalidDefinitionException: No serializer found for class de.alexzimmer.pwa.model.LoginResponse and no properties discovered to create BeanSerializer (to avoid exception, disable SerializationFeature.FAIL_ON_EMPTY_BEANS)
但是,即使我查看生成的类文件,我也可以看到生成的两个类的公共getter。我很感谢大家对如何实现这一目标的建议和想法


谢谢

您必须通过添加
@RegisterForReflection
注释来注册此类以进行反射

它适用于第一个对象,因为它是一个实体,这是自动完成的

请参阅以获取完整的解释

我可能会在那里添加Jackson错误消息,以便更容易找到它