如何排除临时文件被Maven打包到JAR中?

问题描述 投票:0回答:1

如果我运行

mvn package
,而文件(例如
src/main/resources/log4j2.xml
)在 gvim 中打开,Maven 会将
.log4j2.xml.swp
复制到
target/classes/
中,然后将其捆绑到目标 JAR 中。

如何排除与

.??*
全局模式匹配的任何内容?
pom.xml
相当简单(尽管依赖项列表非常大),特别是,
<plugin>
下唯一的
<build>
是:

            <plugin>
                <groupId>org.codehaus.mojo</groupId>
                <artifactId>appassembler-maven-plugin</artifactId>
                <version>2.1.0</version>
                <executions>
                    <execution>
                        <id>classpath-generation</id>
                        <phase>compile</phase>
                        <goals>
                            <goal>assemble</goal>
                        </goals>
                        <configuration>
                            <platforms>
                                <platform>unix</platform>
                            </platforms>
                            <unixScriptTemplate>src/templates/tools_env.sh</unixScriptTemplate>
                            <assembleDirectory>${project.build.directory}/classes</assembleDirectory>
                            <binFolder>.</binFolder>
                            <generateRepository>false</generateRepository>
                            <programs>
                                <program>
                                    <id>tools_env.sh</id>
                                    <mainClass>-</mainClass>
                                </program>
                            </programs>
                        </configuration>
                    </execution>
                </executions>
            </plugin>
maven pom.xml
1个回答
0
投票

您似乎正在使用 Jar 插件的默认设置运行,该插件将复制这些临时文件。

自行控制并遵循文档: https://maven.apache.org/plugins/maven-jar-plugin/index.html

要排除内容,您可以使用类似的内容

  <plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-jar-plugin</artifactId>
    <version>3.4.1</version>
    <configuration>
      <excludes>
        <exclude>**/*.swp</exclude>
      </excludes>
    </configuration>
  </plugin>
© www.soinside.com 2019 - 2024. All rights reserved.