我有這樣一個多模塊Maven項目:Maven - 如何自定義依賴關係的構建?
project
project-core
project-webapp
project-core
是project-webapp
的依賴。在構建project-core
時,我排除了最後一個jar中的一些元素。當我使用maven(通過m2eclipse)構建和部署整個項目時,一切都很好。
但是,如果我使用WTP構建和部署,則會跳過資源篩選。
到目前爲止,我發現的唯一工作是禁用m2eclipse的工作空間分辨率。這樣,WTP就會用maven構建的jar來構建最終的戰爭。此解決方法的主要缺點是每次修改project-core
源代碼時,我都必須安裝,更新項目。
我該如何強制WTP過濾掉project-core
的資源?
項目/項目核心/ pom.xml的
<?xml version="1.0"?>
<project
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"
xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<modelVersion>4.0.0</modelVersion>
<parent>
<artifactId>project</artifactId>
<groupId>com.company.project</groupId>
<version>1.0.0</version>
</parent>
<artifactId>project-core</artifactId>
<name>project-core</name>
<version>${version.project}</version>
<packaging>jar</packaging>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<dependencies>
// (huge) dependencies list ...
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>2.3.1</version>
<configuration>
<excludes>
<exclude>file.properties</exclude>
<exclude>DIR/file.xml</exclude>
</excludes>
</configuration>
</plugin>
</plugins>
</build>
<repositories>
// repositories ...
</repositories>
</project>
編輯:
但是,如果我構建和部署WTP,資源過濾被跳過。
其實我沒有在階段上做過濾。這些資源僅在建造罐子時被過濾。感謝@Samuel EUSTACHI,我現在過濾資源時,他們被複制到target
文件夾。在這裏,我是如何做到的:
項目/項目核心/ pom.xml的
<build>
<!--
I removed completely the plugins node and
replace it with the resources node
-->
<resources>
<resource>
<directory>src/main/resources</directory>
<excludes>
<exclude>file.properties</exclude>
<exclude>DIR/file.xml</exclude>
</excludes>
</resource>
</resources>
</build>
你能顯示完整的pom文件嗎? – khmarbaise
@khmarbaise查看我的更新 – Stephan