我将我的应用程序打包为jar。
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>2.4</version>
<configuration>
<archive>
<manifest>
<mainClass>...</mainClass>
</manifest>
</archive>
</configuration>
</plugin>
此外,我将.properties文件放在src/main/resources
内。我可以随意将此文件移动到任何其他地方。我不希望将属性文件包含在jar中,而是放在同一个输出目录(我们得到jar的地方)并排放置。在Maven中最好的做法是什么?
答案 0 :(得分:9)
好的,可以使用 maven-resources插件的目标resources:copy-resources。
我只是将标准的资源文件夹留给嵌入式(进入jar)资源。对于外部资源,我创建了另一个文件夹:src/main/external-resources
。在这里,我把我的.properties文件。
以下部分将在验证阶段将外部资源复制到输出目录。您可以根据自己的需要改变阶段。
<plugin>
<artifactId>maven-resources-plugin</artifactId>
<version>2.6</version>
<executions>
<execution>
<id>copy-resources</id>
<phase>validate</phase>
<goals>
<goal>copy-resources</goal>
</goals>
<configuration>
<outputDirectory>${project.build.directory}</outputDirectory>
<resources>
<resource>
<directory>src/main/external-resources</directory>
</resource>
</resources>
</configuration>
</execution>
</executions>
</plugin>