首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >java.lang.LinkageError:包版本: jackson-core=2.13.3,jackson-databind=2.13.3,jackson-dataformat-xml=2.13.3,jackson-datatype-jsr310 310=2.13.3

java.lang.LinkageError:包版本: jackson-core=2.13.3,jackson-databind=2.13.3,jackson-dataformat-xml=2.13.3,jackson-datatype-jsr310 310=2.13.3
EN

Stack Overflow用户
提问于 2022-09-02 06:43:43
回答 1查看 244关注 0票数 1

我试图在我的应用程序中实现来自azure的密钥库,在实现了azure-identity:1.5.4lib for DefaultAzureCredentialBuilder()之后,它抛出了下面给出的链接错误,我也强制使用perticular版本并排除了其中的一些版本,但问题仍然存在,请建议我如何检测以前的版本或冲突版本,以便remove.Also的编译sdk版本为32。下面更新了Gradle依赖项。我用过

代码语言:javascript
复制
resolutlionStrategy { failOnVersionConflict()}

但现在没有冲突了。

代码语言:javascript
复制
java.lang.LinkageError: Package versions: jackson-core=2.13.3, jackson-databind=2.13.3, jackson-dataformat-xml=2.13.3, jackson-datatype-jsr310=2.13.3, azure-core=1.31.0, Troubleshooting version conflicts: 
    at com.azure.core.implementation.jackson.ObjectMapperShim.createXmlMapper(ObjectMapperShim.java:82)
    at com.azure.core.util.serializer.JacksonAdapter.<init>(JacksonAdapter.java:82)
    at com.azure.core.util.serializer.JacksonAdapter.<init>(JacksonAdapter.java:59)
    at com.azure.core.util.serializer.JacksonAdapter$SerializerAdapterHolder.<clinit>(JacksonAdapter.java:114)
    at com.azure.core.util.serializer.JacksonAdapter$SerializerAdapterHolder.access$000(JacksonAdapter.java:110)
    at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:602)
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1130)
 Caused by: java.lang.NoSuchMethodError: No static method newFactory(Ljava/lang/String;Ljava/lang/ClassLoader;)Ljavax/xml/stream/XMLInputFactory; in class Ljavax/xml/stream/XMLInputFactory; or its super classes (declaration of 'javax.xml.stream.XMLInputFactory' appears in /data/app/~~sFZqRHFT2xtp6Ogx--
    at com.fasterxml.jackson.dataformat.xml.XmlFactory.<init>(XmlFactory.java:115)
    at com.fasterxml.jackson.dataformat.xml.XmlFactory.<init>(XmlFactory.java:101)
    at com.fasterxml.jackson.dataformat.xml.XmlFactory.<init>(XmlFactory.java:85)
    at com.fasterxml.jackson.dataformat.xml.XmlMapper.<init>(XmlMapper.java:127)
    at com.fasterxml.jackson.dataformat.xml.XmlMapper.builder(XmlMapper.java:218)
    at com.azure.core.implementation.jackson.ObjectMapperFactory.createXmlMapper(ObjectMapperFactory.java:90)

等级依赖性

代码语言:javascript
复制
     implementation("com.azure:azure-sdk-bom:1.2.5"){
    force(true)
}
implementation ('com.fasterxml.jackson.core:jackson-core'){
    version{
        strictly("2.13.4")
    }
    force(true)
}
implementation ('com.fasterxml.jackson.core:jackson-databind:2.13.4'){
    force(true)
    version{
        strictly("2.13.4")
    }
}
implementation ('com.fasterxml.jackson.dataformat:jackson-dataformat-xml'){
    version{
        strictly("2.13.4")
    }
    force(true)
}

implementation ('com.fasterxml.jackson.core:jackson-annotations:2.13.4'){
    version{
        strictly("2.13.4")
    }
    force(true)
}

implementation ('com.fasterxml.jackson.datatype:jackson-datatype-jsr310'){
    version{
        strictly("2.13.4")
    }
    force(true)
}
//azure keyvault lib
implementation ('com.azure:azure-core'){
    version{
        strictly("1.32.0")
    }
    force(true)
}
implementation ('com.azure:azure-security-keyvault-keys:4.4.6')
implementation 'com.azure:azure-security-keyvault-secrets:4.4.6'
implementation (group: 'com.microsoft.azure', name: 'azure-storage', version: '8.6.6')
implementation (group: 'com.azure', name: 'azure-storage-blob', version: '12.19.0')

implementation("com.azure:azure-core-http-netty:1.12.5"){
    force(true)
    force = true
}
implementation("com.microsoft.azure:msal4j:1.13.0"){
    force(true)
}
implementation("com.microsoft.azure:msal4j-persistence-extension:1.1.0"){
    force(true)
}
implementation group: 'javax.xml.stream', name: 'stax-api', version: '1.0-2'

implementation ('com.google.guava:guava:27.0.1-android'){
    force(true)
    force = true
}

implementation ('com.azure:azure-identity'){
   version{
       strictly("1.5.5")
   }
    exclude group: 'com.azure', module: 'azure-core'
    exclude group: 'com.fasterxml.jackson.core', module: 'jackson-core'
    exclude group: 'com.fasterxml.jackson.core', module: 'jackson-databind'
    exclude group: 'com.fasterxml.jackson.dataformat', module: 'jackson-dataformat-xml'
    exclude group: 'com.fasterxml.jackson.datatype', module: 'jackson-datatype-jsr353'
}
EN

回答 1

Stack Overflow用户

发布于 2022-09-06 09:09:47

如果依赖项列表中有多个Jackson版本,则会发生此错误。

Azure库在不同版本中积极更新Jackson版本。如果有不同版本的库,必然会引入冲突。(虽然azure是通过杰克逊的兼容 2.10+制作的)

这就是Azure发布bom的原因。这些工件经过严格的测试,以确保不同的天蓝色库之间的兼容性。

代码语言:javascript
复制
<dependencyManagement>
    <dependencies>
        <dependency>
            <groupId>com.azure</groupId>
            <artifactId>azure-sdk-bom</artifactId>
            <version>1.2.5</version>
            <type>pom</type>
            <scope>import</scope>
        </dependency>
    </dependencies>
</dependencyManagement>

<dependencies>
        <dependency>
            <groupId>com.azure</groupId>
            <artifactId>azure-identity</artifactId>
        </dependency>
        <dependency>
            <groupId>com.azure</groupId>
            <artifactId>azure-core</artifactId>
        </dependency>
        <dependency>
            <groupId>com.azure</groupId>
            <artifactId>azure-security-keyvault-secrets</artifactId>
        </dependency>
        <dependency>
            <groupId>com.azure</groupId>
            <artifactId>com.azure:azure-security-keyvault-keys</artifactId>
        </dependency>
        <dependency>
            <groupId>com.azure</groupId>
            <artifactId>azure-storage-blob</artifactId>
        </dependency>
        <dependency>
            <groupId>com.azure</groupId>
            <artifactId>azure-communication-chat</artifactId>
        </dependency>

</dependencies>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73578723

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档