33

我有 \src\main\resources\logback.xml 文件。当我运行mvn package它时,默认情况下它会被放入 jar 中。如何让 Maven 将它放在罐子旁边,而不是里面?

所以,好吧,我只想让 Maven 将资源复制到 jar 所在的同一个文件夹中。

4

3 回答 3

84

不需要插件定义,只需编辑构建资源:

<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>

参考:

于 2011-04-20T13:18:35.050 回答
0

您可以使用Maven 程序集插件构建一个包含两者的 ZIP 文件。

您还可以使用Maven Antrun 插件或类似插件来放置您想要的任何文件,但是每个项目的单个工件的想法已深入 Maven 内部,因此它有可能在其他地方追捕您。

于 2011-04-12T15:44:31.410 回答
0

排除该文件: http ://maven.apache.org/plugins/maven-resources-plugin/examples/include-exclude.html

然后使用 Maven Antrun 插件复制文件。

但是,后半部分意义不大。如果是要放到服务器的配置文件,只需手动复制即可。

于 2011-04-13T15:24:36.870 回答