从 src/main/java 和 src/main/resources spring 引导 jar 中排除文件

Exclude files from src/main/java and src/main/resources spring boot jar

我试图在使用 spring boot maven 插件构建 jar 时从 src/main/java 中排除一些 java 文件以及从 src/main/resources 文件夹中排除一些 yml 文件。我尝试了以下选项:

maven-jar-plugin

中的选项 1
<configuration>
    <excludes>
        <exclude>**/security/**/*.java</exclude>
        <exclude>**/application-*.yml</exclude>
    </excludes>
</configuration>

选项 2 构建标签中的资源:

<resources>
    <resource>
        <directory>src/main</directory>
            <excludes>
                <exclude>**/security/*</exclude>
                <exclude>**/application-*.yml</exclude>
            </excludes>
            <filtering>false</filtering>
    </resource>
</resources>

选项 1 和两者都从生成的 jar 中删除 java 文件。
但是选项 2 更改了 JAR 中的结构,它包括 java 和资源文件夹。

非常感谢以上任何指示。

找到解决办法,如下;它使用 Maven jar 插件排除项。之前提供的 maven 通配符中存在问题。

编辑: 包含 java 文件的正确方法不正确,按照 JF Meier 和 khmarbaise 的建议,这些文件在构建工件时被删除。 但是文件排除仍然有效。

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-jar-plugin</artifactId>
    <configuration>
        <excludes>
            <exclude>**/security/**</exclude>
            <exclude>**/application-*.yml</exclude>
        </excludes>
    </configuration>
</plugin>
<plugin>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-maven-plugin</artifactId>
    <executions>
        <execution>
            <id>repackage</id>
            <goals>
                <goal>repackage</goal>
            </goals>
        </execution>
    </executions>
</plugin>