由于传递依赖性,我的战争将由xml-apis,xerces jars填充.我尝试按照maven-war-plugin的参考页面上的说明进行操作,但它无效.
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<configuration>
<packagingExcludes>WEB-INF/lib/xalan-2.6.0.jar,WEB-INF/lib/xercesImpl-2.6.2.jar,WEB-INF/lib/xml-apis-1.0.b2.jar,WEB-INF/lib/xmlParserAPIs-2.6.2.jar</packagingExcludes>
<webXml>${basedir}/src/main/webapp/WEB-INF/web.xml</webXml>
<warName>project1</warName>
<warSourceDirectory>src/main/webapp</warSourceDirectory>
</configuration>
</plugin>
Run Code Online (Sandbox Code Playgroud)
我究竟做错了什么 ?如果重要的话,我发现我正在使用的maven-war-plugin是版本2.1-alpha-1
Dav*_*itz 67
您可以按提供的方式标记这些依赖项:
<dependency>
<groupId>xerces</groupId>
<artifactId>xerces</artifactId>
<version>2.4.0</version>
<scope>provided</scope>
</dependency>
Run Code Online (Sandbox Code Playgroud)
这样maven会将它们添加到编译类路径中,但不会打包它们.假设它们存在于您的servlet容器中.
查看更多有关行家范围在这里下的"范围"
编辑 如果要删除通过传递依赖项添加的类,可以将它们从依赖项中排除,如下所示:
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring</artifactId>
<version>2.5.6</version>
<exclusions>
<exclusion>
<groupId>commons-logging</groupId>
<artifactId>commons-logging</artifactId>
</exclusion>
</exclusions>
</dependency>
Run Code Online (Sandbox Code Playgroud)
(取自这个答案)
在这里查看更多
我修好了它.
李自成带着几分更多的照顾参考,我发现元素packagingExcludes应该warSourceExcludes.
小智 5
关于传递依赖性的排除,我认为不适用于传递性依赖的转换,我认为可能就是这种情况.
例如,添加hibernate-core的依赖关系 - > dom4j - > xml-apis如果在hibernate-core附近添加xml-apis的排除,仍然添加xml-apis ...
| 归档时间: |
|
| 查看次数: |
79436 次 |
| 最近记录: |