ここで再現可能:
以前はJava 8.xを使用していましたが、すべて正常に機能していました。jdk と Oracle の両方を開きます。
JDK & および Oracle JDK がアップグレードされると、jackson
.
Error:(10, 1) java: constructor ClientResponseData in class my.response.ClientResponseData cannot be applied to given types;
required: no arguments
found: java.lang.String,java.lang.String
reason: actual and formal argument lists differ in length
私の ClientResponseData は次のように定義されています:
@JacksonXmlRootElement(localName = "ClientResponseData")
@Builder
@Getter
public class ClientResponseData {
@JacksonXmlProperty(localName = "responseCode")
private String responseCode;
@JacksonXmlProperty(localName = "number")
private String number;
}
Javaの更新前に私のために働いていた依存関係:
<dependency>
<groupId>com.fasterxml.jackson.dataformat</groupId>
<artifactId>jackson-dataformat-xml</artifactId>
<version>2.9.8</version>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.16.18</version>
<scope>provided</scope>
</dependency>
pom.xml では、私はまだ使用しています:<java.version>1.8</java.version>
Javaのアップグレード後、Lombokを少なくとも最新の1.18.8に更新する必要がありました
それから私は問題を抱え始めます。
Error:(10, 1) java: constructor ClientResponseData in class my.response.ClientResponseData cannot be applied to given types;
required: no arguments
found: java.lang.String,java.lang.String
reason: actual and formal argument lists differ in length
次の場合に失敗します。
return new com.fasterxml.jackson.dataformat.xml.XmlMapper().readValue(xmlString, cls);
それを機能させる方法の手がかりはありますか?
私は試した:
@NoArgsConstructor を追加する - いいえ
ジャクソンを最新に更新します-いいえ