我有srcmainresourceslogback.xml文件。当我运行mvn package
时,默认情况下它被放置到jar中。我怎么让Maven把它放在罐子旁边,而不是里面?
所以,我只想让Maven将资源复制到jar所在的文件夹中。
不需要插件定义,只需编辑构建资源:
<build>
<resources>
<!-- regular resource processsing for everything except logback.xml -->
<resource>
<directory>src/main/resources</directory>
<excludes>
<exclude>logback.xml</exclude>
</excludes>
</resource>
<!-- resource processsing with a different output directory
for logback.xml -->
<resource>
<directory>src/main/resources</directory>
<includes>
<include>logback.xml</include>
</includes>
<!-- relative to target/classes
i.e. ${project.build.outputDirectory} -->
<targetPath>..</targetPath>
</resource>
</resources>
</build>
参考:-
process-resources
(Maven书) -
<build><resources>
(pom引用)
可以使用Maven Assembly插件构建一个包含两者的ZIP文件。
你也可以使用Maven Antrun插件或类似的东西来放置你想要的任何文件,但是每个项目一个工件的想法是内置在Maven内部深处的,所以有可能它会在其他地方找到你。
排除该文件:http://maven.apache.org/plugins/maven-resources-plugin/examples/include-exclude.html
然后使用Maven Antrun插件复制文件。
然而,后一部分没有多大意义。如果它是一个要放在服务器中的配置文件,只需手动复制它。