У меня есть несколько модулей Maven проект, как это:Maven - Как настроить сборку зависимостей?
project
project-core
project-webapp
project-core
является зависимость project-webapp
. При построении project-core
я исключаю некоторые элементы из последней банки. Когда я создаю и развертываю весь проект с помощью maven (через m2eclipse), все в порядке.
Однако, если я создаю и развертываю с помощью WTP, фильтрация ресурсов пропускается.
Единственная работа, которую я нашел до сих пор, заключается в отключении разрешения рабочей области от m2eclipse. Таким образом, WTP строит финальную войну с банкой, созданной maven. Основным недостатком этого обходного пути является то, что я должен устанавливать, обновлять проект каждый раз, когда изменяю исходный код 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>
РЕДАКТИРОВАТЬ:
Однако, если я создавать и развертывать с ВОС, фильтрация ресурсов пропускается.
На самом деле я не делал фильтрацию справа этап. Ресурсы отфильтровывались только во время создания банки. Благодаря @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