Spring Boot Maven 插件 - 重命名原始 JAR

Spring Boot Maven Plugin - rename original JAR

当我使用 Spring Boot Maven 插件构建我的项目时,我得到了两个 jar 文件:foo.jarfoo.jar.original。我知道我可以使用 fileName 来调用重新打包的文件,但我想做的是重命名原始文件。我想要 foo.jar(重新打包)和 original-foo.jar(原始),因为我希望清楚哪个是原始文件,但我需要文件为 .jar 才能使用管道工具。我该怎么做?

.original 后缀在 org.springframework.boot.loader.tools.Repackager.getBackupFile() 方法中是硬编码的,因此您无法用 original- 前缀替换它,除非您 fork 自己的 [= 版本17=] 引导 Maven 插件:

/**
 * Return the {@link File} to use to backup the original source.
 * @return the file to use to backup the original source
 */
public final File getBackupFile() {
    return new File(this.source.getParentFile(), this.source.getName() + ".original");
}

您好,您可以使用其他 Maven 插件来实现,我正在使用 maven-antrun-plugin

        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-antrun-plugin</artifactId>
            <executions>
                <execution>
                    <phase>package</phase>
                    <configuration>
                        <target>
                            <copy file="${project.build.directory}/${project.build.finalName}.jar.original"
                                  tofile="${project.build.directory}/${project.build.finalName}.bazzz" />
                        </target>
                    </configuration>
                    <goals>
                        <goal>run</goal>
                    </goals>
                </execution>
            </executions>
        </plugin>

然后它将原始文件复制到其他名称

-rw-r--r--   1 ming  staff     140317 May 15 16:40 test-0.0.1-SNAPSHOT.bazzz
-rw-r--r--   1 ming  staff     140317 May 15 16:40 test-0.0.1-SNAPSHOT.jar.original