由于导入了MavenJAR,所以将javax.xml.namespace.QName加倍
我在将Maven创建的JAR放入我的任何Web项目中时遇到问题 到目前为止,我所做的是:我在不同的web项目上实现了一个用于身份验证的web服务。因此,AuthenticationThing独立于任何Webproject运行,并且可以在将来的项目中用于对同一用户库进行身份验证。因此Webservice已经启动并运行,我创建了一个新的Maven项目,并将所有必要的文件(包括我自己的描述接口的Webservice以及jax ws所需的所有包)打包到一个JAR中。这对我来说已经是一段相当长的旅程,但我通过以下依赖项实现了它:由于导入了MavenJAR,所以将javax.xml.namespace.QName加倍,java,eclipse,maven,Java,Eclipse,Maven,我在将Maven创建的JAR放入我的任何Web项目中时遇到问题 到目前为止,我所做的是:我在不同的web项目上实现了一个用于身份验证的web服务。因此,AuthenticationThing独立于任何Webproject运行,并且可以在将来的项目中用于对同一用户库进行身份验证。因此Webservice已经启动并运行,我创建了一个新的Maven项目,并将所有必要的文件(包括我自己的描述接口的Webservice以及jax ws所需的所有包)打包到一个JAR中。这对我来说已经是一段相当长的旅程,但我
<dependencies>
<!-- jax-ws maven dependency -->
<dependency>
<groupId>javax.xml.ws</groupId>
<artifactId>jaxws-api</artifactId>
<version>2.3.1</version>
</dependency>
<dependency>
<groupId>com.sun.xml.ws</groupId>
<artifactId>jaxws-rt</artifactId>
<version>2.1.3</version>
</dependency>
<!-- https://mvnrepository.com/artifact/javax.jws/javax.jws-api -->
<dependency>
<groupId>javax.jws</groupId>
<artifactId>javax.jws-api</artifactId>
<version>1.1</version>
</dependency>
<dependency>
<groupId>com.sun.xml.messaging.saaj</groupId>
<artifactId>saaj-impl</artifactId>
<version>1.5.1</version>
</dependency>
</dependencies>
javax.xml.ws
所以我想这是因为我的一个依赖项也拉了这个包,而且它是唯一一个仍然可以通过JRE使用的(?)包(不像其他所有外包的javax.xml.ws,它首先触发了所有Maven包)。那么现在该怎么办呢?我可以指定应该使用哪个QName(显然是来自JRE的QName)吗?或者我可以从Maven JAR中排除javax.xml.namespace吗
我完全不知道该怎么办
<!-- Maven Assembly Plugin -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-assembly-plugin</artifactId>
<version>2.4.1</version>
<configuration>
<!-- get all project dependencies -->
<descriptorRefs>
<descriptorRef>jar-with-dependencies</descriptorRef>
</descriptorRefs>
<!-- MainClass in mainfest make a executable jar -->
</configuration>
<executions>
<execution>
<id>make-assembly</id>
<!-- bind to the packaging phase -->
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
</execution>
</executions>
</plugin>
The package javax.xml.namespace is accessible from more than one module: <unnamed>, java.xml