首页 > 解决方案 > 如何动态摆脱 Maven 项目中的 xml-apis 库?

问题描述

我有一个 Maven 项目,需要摆脱xml-apis图书馆。它总是以某种方式被包括在内。在依赖树中看不到它。这是依赖树:

[INFO] com.softgile:asan:atlassian-plugin:1.0.1-SNAPSHOT
[INFO] +- com.atlassian.jira:jira-api:jar:8.12.0:provided
[INFO] |  +- com.atlassian.annotations:atlassian-annotations:jar:2.1.0:provided
[INFO] |  |  \- com.google.code.findbugs:jsr305:jar:3.0.0:provided
[INFO] |  +- com.atlassian.ofbiz:entityengine-share:jar:1.5.0:provided
[INFO] |  +- com.atlassian.ofbiz:entityengine:jar:1.5.0:provided
[INFO] |  |  \- jta:jta:jar:1.0.1:provided
[INFO] |  +- com.atlassian.collectors:atlassian-collectors-util:jar:1.1:provided
[INFO] |  +- opensymphony:webwork:jar:1.4-atlassian-30:provided
[INFO] |  |  \- com.atlassian.html:atlassian-html-encoder:jar:1.4:provided
[INFO] |  +- webwork:pell-multipart-request:jar:1.31.0:provided
[INFO] |  +- com.atlassian.core:atlassian-core:jar:7.0.2:provided
[INFO] |  |  +- dom4j:dom4j:jar:1.6.1-atlassian-2:provided
[INFO] |  |  \- com.atlassian.image:atlassian-image-consumer:jar:1.0.1:provided
[INFO] |  +- com.atlassian.core:atlassian-core-user:jar:7.0.2:provided
[INFO] |  +- com.atlassian.core:atlassian-core-thumbnail:jar:7.0.2:provided
[INFO] |  |  +- com.twelvemonkeys.imageio:imageio-jpeg:jar:3.4.1:provided
[INFO] |  |  |  +- com.twelvemonkeys.imageio:imageio-core:jar:3.4.1:provided
[INFO] |  |  |  +- com.twelvemonkeys.imageio:imageio-metadata:jar:3.4.1:provided
[INFO] |  |  |  +- com.twelvemonkeys.common:common-lang:jar:3.4.1:provided
[INFO] |  |  |  +- com.twelvemonkeys.common:common-io:jar:3.4.1:provided
[INFO] |  |  |  \- com.twelvemonkeys.common:common-image:jar:3.4.1:provided
[INFO] |  |  \- com.twelvemonkeys.imageio:imageio-tiff:jar:3.4.1:provided
[INFO] |  +- com.atlassian.extras:atlassian-extras:jar:3.2:provided
[INFO] |  +- com.atlassian.velocity:atlassian-velocity:jar:1.3:provided
[INFO] |  |  +- opensymphony:oscore:jar:2.2.7:provided
[INFO] |  |  \- org.apache.velocity:velocity:jar:1.6.4:provided
[INFO] |  +- osworkflow:osworkflow:jar:2.9.0-atlassian-1:provided
[INFO] |  +- opensymphony:propertyset:jar:1.5:provided
[INFO] |  +- com.atlassian.cache:atlassian-cache-api:jar:4.0.2:provided
[INFO] |  |  +- com.atlassian.instrumentation:atlassian-instrumentation-core:jar:3.0.0:provided
[INFO] |  |  \- io.atlassian.util.concurrent:atlassian-util-concurrent:jar:4.0.1:provided
[INFO] |  +- com.atlassian.beehive:beehive-api:jar:4.0.2:provided
[INFO] |  +- com.atlassian.tenancy:atlassian-tenancy-api:jar:3.0.1:provided
[INFO] |  |  \- com.atlassian.event:atlassian-event:jar:4.0.0:provided
[INFO] |  +- com.atlassian.upgrade:upgrade-task-framework-api:jar:2.0.2:provided
[INFO] |  +- com.atlassian.crowd:embedded-crowd-api:jar:4.0.2:provided
[INFO] |  +- com.google.guava:guava:jar:26.0-jre:provided
[INFO] |  |  +- org.checkerframework:checker-qual:jar:2.5.2:provided
[INFO] |  |  +- com.google.errorprone:error_prone_annotations:jar:2.1.3:provided
[INFO] |  |  +- com.google.j2objc:j2objc-annotations:jar:1.1:provided
[INFO] |  |  \- org.codehaus.mojo:animal-sniffer-annotations:jar:1.14:provided
[INFO] |  +- com.atlassian.fugue:fugue:jar:2.7.0:provided
[INFO] |  +- io.atlassian.fugue:fugue:jar:4.7.2:provided
[INFO] |  +- org.codehaus.jackson:jackson-core-asl:jar:1.9.13-atlassian-4:provided
[INFO] |  +- org.codehaus.jackson:jackson-mapper-asl:jar:1.9.13-atlassian-4:provided
[INFO] |  +- com.sun.mail:jakarta.mail:jar:1.6.5:provided
[INFO] |  |  \- com.sun.activation:jakarta.activation:jar:1.2.1:provided
[INFO] |  +- com.atlassian.mail:atlassian-mail:jar:5.0.3:provided
[INFO] |  |  +- commons-beanutils:commons-beanutils:jar:1.6.1:provided
[INFO] |  |  \- commons-digester:commons-digester:jar:1.4.1:provided
[INFO] |  +- oro:oro:jar:2.0.7:provided
[INFO] |  +- com.atlassian.threadlocal:atlassian-threadlocal:jar:1.3:provided
[INFO] |  +- com.atlassian.applinks:applinks-api:jar:8.0.0:provided
[INFO] |  +- com.google.javascript:closure-compiler-unshaded:jar:v20181008:provided
[INFO] |  |  +- com.google.javascript:closure-compiler-externs:jar:v20181008:provided
[INFO] |  |  +- args4j:args4j:jar:2.0.26:provided
[INFO] |  |  +- com.google.protobuf:protobuf-java:jar:3.0.2:provided
[INFO] |  |  \- com.google.jsinterop:jsinterop-annotations:jar:1.0.0:provided
[INFO] |  +- com.atlassian.velocity.htmlsafe:velocity-htmlsafe:jar:3.1.0:provided
[INFO] |  +- com.atlassian.plugins:atlassian-plugins-api:jar:5.3.7:provided
[INFO] |  +- com.atlassian.plugins:atlassian-plugins-webfragment:jar:5.0.0:provided
[INFO] |  +- com.atlassian.plugins:atlassian-plugins-webfragment-api:jar:5.0.0:provided
[INFO] |  +- com.atlassian.ozymandias:atlassian-plugin-point-safety:jar:1.0.0:provided
[INFO] |  +- jfree:jfreechart:jar:1.0.13:provided
[INFO] |  +- com.atlassian.plugins:atlassian-plugins-webresource:jar:4.1.3:provided
[INFO] |  |  +- com.atlassian.plugins:atlassian-plugins-webresource-spi:jar:4.1.3:provided
[INFO] |  |  +- com.atlassian.plugins:atlassian-plugins-webresource-api:jar:4.1.3:provided
[INFO] |  |  +- org.tuckey:urlrewritefilter:jar:4.0.4:provided
[INFO] |  |  \- com.atlassian.sourcemap:sourcemap:jar:1.7.6:provided
[INFO] |  +- com.atlassian.plugins:atlassian-plugins-webresource-compiler-gcc:jar:4.1.3:provided
[INFO] |  +- jfree:jcommon:jar:1.0.8:provided
[INFO] |  +- com.atlassian.gadgets:atlassian-gadgets-api:jar:5.0.0:provided
[INFO] |  +- com.atlassian.johnson:atlassian-johnson-core:jar:4.0.0:provided
[INFO] |  |  \- com.atlassian.plugins:atlassian-plugins-servlet:jar:5.0.0:provided
[INFO] |  +- joda-time:joda-time:jar:2.10.5:provided
[INFO] |  +- commons-lang:commons-lang:jar:2.6:provided
[INFO] |  +- org.apache.commons:commons-lang3:jar:3.8:provided
[INFO] |  +- commons-io:commons-io:jar:2.6:provided
[INFO] |  +- commons-httpclient:commons-httpclient:jar:3.1-atlassian-2:provided
[INFO] |  +- log4j:log4j:jar:1.2.17-atlassian-2:provided
[INFO] |  +- com.atlassian.profiling:atlassian-profiling:jar:3.2.0:provided
[INFO] |  +- com.atlassian.scheduler:atlassian-scheduler-api:jar:3.0.0:provided
[INFO] |  +- com.atlassian.analytics:analytics-api:jar:6.1.6:provided
[INFO] |  +- com.atlassian.application:atlassian-application-api:jar:2.0.0:provided
[INFO] |  \- com.atlassian:lucene-extras:jar:7.3.1-atlassian-4:provided
[INFO] +- junit:junit:jar:4.10:test
[INFO] |  \- org.hamcrest:hamcrest-core:jar:1.1:test
[INFO] +- com.atlassian.plugin:atlassian-spring-scanner-annotation:jar:1.2.13:provided
[INFO] +- javax.inject:javax.inject:jar:1:provided
[INFO] +- com.atlassian.plugins:atlassian-plugins-osgi-testrunner:jar:2.0.1:test
[INFO] +- javax.ws.rs:jsr311-api:jar:1.1.1:provided
[INFO] +- com.google.code.gson:gson:jar:2.2.2-atlassian-1:compile
[INFO] +- org.mockito:mockito-all:jar:1.8.5:test
[INFO] +- javax.servlet:servlet-api:jar:2.4:provided
[INFO] +- javax.xml.bind:jaxb-api:jar:2.3.1:provided
[INFO] |  \- javax.activation:javax.activation-api:jar:1.2.0:provided
[INFO] +- com.atlassian.plugins.rest:atlassian-rest-common:jar:1.0.2:provided
[INFO] |  +- com.atlassian.plugins.rest:com.atlassian.jersey-library:pom:1.0.2:provided
[INFO] |  |  +- com.sun.jersey:jersey-server:jar:1.0.3:provided
[INFO] |  |  |  +- com.sun.jersey:jersey-core:jar:1.0.3:provided
[INFO] |  |  |  \- asm:asm:jar:3.1:provided
[INFO] |  |  +- com.sun.jersey:jersey-json:jar:1.0.3:provided
[INFO] |  |  |  +- org.codehaus.jettison:jettison:jar:1.0.1:provided
[INFO] |  |  |  \- org.codehaus.jackson:jackson-asl:jar:0.9.4:provided
[INFO] |  |  \- commons-fileupload:commons-fileupload:jar:1.2.1:provided
[INFO] |  \- net.sourceforge.findbugs:jsr305:jar:1.3.2:provided
[INFO] +- com.atlassian.sal:sal-api:jar:3.0.7:provided
[INFO] +- org.apache.wink:wink-client:jar:1.4:test
[INFO] |  +- org.apache.wink:wink-common:jar:1.4:test
[INFO] |  |  +- org.apache.geronimo.specs:geronimo-jaxrs_1.1_spec:jar:1.0:test
[INFO] |  |  \- org.apache.geronimo.specs:geronimo-annotation_1.1_spec:jar:1.0:test
[INFO] |  +- com.sun.xml.bind:jaxb-impl:jar:2.2.1.1:provided
[INFO] |  \- javax.activation:activation:jar:1.1:test
[INFO] +- org.slf4j:slf4j-api:jar:1.6.6:provided
[INFO] +- org.apache.httpcomponents:httpclient:jar:4.1.1:test
[INFO] |  +- org.apache.httpcomponents:httpcore:jar:4.1:test
[INFO] |  +- commons-logging:commons-logging:jar:1.1.1:test
[INFO] |  \- commons-codec:commons-codec:jar:1.4:provided
[INFO] +- com.atlassian.templaterenderer:atlassian-template-renderer-api:jar:2.0.0:provided
[INFO] |  \- commons-collections:commons-collections:jar:3.2.1:provided
[INFO] +- org.misclient:misclient:jar:1.0:compile
[INFO] +- com.atlassian.aui:auiplugin:jar:8.0.0:provided
[INFO] +- com.atlassian.upm:licensing-api:jar:2.21.4:provided
[INFO] \- com.atlassian.upm:upm-api:jar:2.21:provided

我什至尝试添加排除项

<exclusion>
    <groupId>xml-apis</groupId>
    <artifactId>xml-apis</artifactId>
</exclusion>

中的每个依赖项pom.xml,但xml-apis仍被包含在内。我想它可以使用 OSGI 服务以某种方式动态排除,但不知道该怎么做。有任何想法吗?谢谢

标签: javamavenosgi

解决方案


推荐阅读