【发布时间】:2021-12-08 11:49:40
【问题描述】:
我正在使用 azure-core-1.20 连接到 Azure KeyVault。 它在第 35 行失败。
有人能看出造成这种冲突的原因吗? 谢谢
通话失败:
java.lang.VerifyError: Bad return type
Exception Details:
Location:
com/fasterxml/jackson/databind/cfg/MapperBuilder.streamFactory()Lcom/fasterxml/jackson/core/TokenStreamFactory; @7: areturn
Reason:
Type 'com/fasterxml/jackson/core/JsonFactory' (current frame, stack[0]) is not assignable to 'com/fasterxml/jackson/core/TokenStreamFactory' (from method signature)
Current Frame:
bci: @7
flags: { }
locals: { 'com/fasterxml/jackson/databind/cfg/MapperBuilder' }
stack: { 'com/fasterxml/jackson/core/JsonFactory' }
Bytecode:
0x0000000: 2ab4 0002 b600 08b0
at com.fasterxml.jackson.databind.json.JsonMapper.builder(JsonMapper.java:114)
at com.azure.core.util.serializer.JacksonAdapter.(JacksonAdapter.java:133)
at com.azure.core.util.serializer.JacksonAdapter.createDefaultSerializerAdapter(JacksonAdapter.java:192)
at com.azure.identity.implementation.IdentityClient.(IdentityClient.java:96)
at com.azure.identity.implementation.IdentityClientBuilder.build(IdentityClientBuilder.java:113)
at com.azure.identity.ManagedIdentityCredential.(ManagedIdentityCredential.java:39)
at com.azure.identity.DefaultAzureCredentialBuilder.getCredentialsChain(DefaultAzureCredentialBuilder.java:129)
at com.azure.identity.DefaultAzureCredentialBuilder.build(DefaultAzureCredentialBuilder.java:123)
尝试 Ivy,但现在 jackson 2.9.9 与 2.12.5 冲突。 不知道杰克逊 2.9.9 来自哪里。常春藤报告显示没有版本 2.9.9
<dependencies>
<dependency org="com.azure" name="azure-core" rev="1.21.0" conf="binaries->default" />
<dependency org="com.novell.ldap" name="jldap" rev="2009-10-07" conf="binaries->default" />
<dependency org="org.springframework" name="spring-jdbc" rev="5.3.11" conf="binaries->default" />
<dependency org="org.apache.tomcat" name="tomcat-jdbc" rev="9.0.52" conf="binaries->default" />
<dependency org="com.azure" name="azure-security-keyvault-secrets" rev="4.3.3" conf="binaries->default" />
<dependency org="com.azure" name="azure-identity" rev="1.3.6" conf="binaries->default" />
<dependency org="javax.resource" name="javax.resource-api" rev="1.7.1" conf="binaries->default" />
<dependency org="org.springframework" name="spring-webmvc" rev="5.3.12" conf="binaries->default" />
<dependency org="org.springframework" name="spring-context" rev="5.3.12" conf="binaries->default" />
<!-- <dependency org="org.springframework" name="spring-jca" rev="2.0.8" conf="binaries->default" >
<exclude module="spring-bean"></exclude>
<exclude module="spring-core"></exclude>
<exclude module="spring-dao"></exclude>
</dependency> -->
<dependency org="commons-configuration" name="commons-configuration" rev="1.10" conf="binaries->default" />
<dependency org="commons-collections" name="commons-collections" rev="3.2.2" conf="binaries->default" />
<dependency org="displaytag" name="displaytag" rev="1.2" conf="binaries->default" >
<exclude module="jcl104-over-slf4j"></exclude>
<exclude module="slf4j-log4j12"></exclude>
</dependency>
<dependency org="com.google.code.gson" name="gson" rev="2.8.8" conf="binaries->default" />
<dependency org="org.apache.struts" name="struts-core" rev="1.3.10" conf="binaries->default" />
<dependency org="org.apache.struts" name="struts-taglib" rev="1.3.10" conf="binaries->default" />
<dependency org="org.apache.struts" name="struts-extras" rev="1.3.10" conf="binaries->default" />
<dependency org="org.apache.struts" name="struts-tiles" rev="1.3.10" conf="binaries->default" />
<dependency org="org.apache.struts" name="struts-el" rev="1.3.10" conf="binaries->default" />
<dependency org="org.apache.struts" name="struts-faces" rev="1.3.10" conf="binaries->default" />
<dependency org="org.apache.logging.log4j" name="log4j-core" rev="2.14.1" conf="binaries->default" />
<dependency org="org.apache.logging.log4j" name="log4j-api" rev="2.14.1" conf="binaries->default" />
<dependency org="org.apache.logging.log4j" name="log4j-slf4j-impl" rev="2.14.1" conf="binaries->default" />
<dependency org="org.slf4j" name="slf4j-api" rev="1.7.32" conf="binaries->default" />
<dependency org="org.slf4j" name="slf4j-log4j12" rev="1.7.32" conf="binaries->default" />
<dependency org="org.slf4j" name="slf4j-simple" rev="1.7.32" conf="binaries->default" />
<dependency org="org.slf4j" name="jcl-over-slf4j" rev="1.7.32" conf="binaries->default" />
</dependencies>
【问题讨论】:
-
您能否提供
pom.xml代码以查看您使用的依赖项? -
没有 pom.xml,这是旧应用程序。
-
我终于明白了。
java.lang.LinkageError: Package versions: jackson-annotations=2.9.9, jackson-core=2.9.9, jackson-databind=2.9.9, jackson-dataformat-xml=2.12.5, jackson-datatype-jsr310=2.12.5, azure-core=1.21.0 -
在问题中您提到了 azure Core 1.20,而在错误中它是 azure-core 1.21.0。你更新了吗?而且,您在项目中为此安装了哪些依赖项?
-
尝试更新到此dependencies compatibility version 软件包安装。
标签: java azure ant jackson jackson-databind