我有maven项目,其中包含Java类和Windows / Linux脚本。每当我对Java源代码进行一些更改时,我都会执行“mvn install'并调用这些脚本来测试我的更改。因此,这些脚本指向Maven存储库以查找JAR。例如,
SET app=%M2_REPO%\A\B\C\1.0-SNAPSHOT\C-1.0-SNAPSHOT.jar
SET app1=%M2_REPO%\E\F\G\1.0-SNAPSHOT\G-1.0-SNAPSHOT.jar
java -classpath !app!;!app1!;!app2!;!app3! !main_class! %1 %2 %3 %4
现在,要求是 1.将所有罐子和脚本打包成一个ZIP文件; 2. jars和scripts必须位于此ZIP文件的根级别。
我只是想知道是否可以自动设置应用
app=%M2_REPO%\A\B\C\1.0-SNAPSHOT\C-1.0-SNAPSHOT.jar
在编译阶段
并自动将其更改为
app=C-1.0-SNAPSHOT.jar
在安装阶段。
如果是,那怎么样?提前谢谢。
答案 0 :(得分:0)
你应该在两个不同的阶段使用maven-resources-plugin和两个独立的设置文件:
<executions>
<execution>
<id>compile-settings</id>
<phase>process-resources</phase>
<goals>
<goal>copy-resources</goal>
</goals>
<configuration>
<resources>
<resource>
<directory>something</directory>
<filtering>true</filtering>
</resource>
</resources>
<filters>
<filter>resources/compile.properties</filter>
</filters>
</configuration>
</execution>
<execution>
<id>package-settings</id>
<phase>package</phase>
<goals>
<goal>copy-resources</goal>
</goals>
<configuration>
<resources>
<resource>
<directory>something</directory>
<filtering>true</filtering>
</resource>
</resources>
<filters>
<filter>resources/package.properties</filter>
</filters>
</configuration>
</execution>
</executions>