spring - 使用 Spring Boot Maven 插件将 Maven 构建时间添加到 jar 名称构建

标签 spring maven spring-boot executable-jar spring-boot-maven-plugin

如何使用 Spring Boot Maven 插件将 Maven 构建时间添加到 jar 文件名?

我想要实现类似的目标:jar_name-build_time.jar

最佳答案

默认情况下,Spring Boot Maven 插件会构建名为 ${project.build.finalName} 的 jar 文件。 这可以使用非必需属性 finalName 进行配置。

Maven 构建时间可以用作 ${maven.build.timestamp}

因此,将所有内容放在一起,您所需要做的就是将构建时间附加到默认 jar 名称:

<plugin>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-maven-plugin</artifactId>
    <version>1.5.6.RELEASE</version>
    <configuration>
        <mainClass>com.marand.thinkmed.meds.config.boot.MedsConfigApplication</mainClass>
        <finalName>${project.build.finalName}-${maven.build.timestamp}</finalName>
    </configuration>
</plugin>

此外,请确保更改时间戳格式,以免违反文件命名策略:

<properties>
    <maven.build.timestamp.format>yyyy-MM-dd-HH-mm</maven.build.timestamp.format>
</properties>

关于spring - 使用 Spring Boot Maven 插件将 Maven 构建时间添加到 jar 名称构建,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45837929/

相关文章:

spring - 在 LISP 中使用依赖注入(inject)(以及 IoC 容器)的要点

java - maven 部署在 jre1.7 上失败

maven - Gradle - 获取每个库/模块的依赖项列表

spring-boot - 基于微服务的环境中的 Keycloak 身份验证流程

java - Spring Azure AD - 身份验证后获取用户的地址

spring-boot - 如何忽略 Spring JPA findBy 存储库中的重音?

java - 我们可以从 byteArrayResource 获取文件名吗?

java - 如何在 Spring-data rest 中更新引用对象?

java - Maven 模块看不到可靠的子模块

java - 如果一个 Controller 有一个 @Controller 注释,那么对于没有组件扫描的 Spring 来说,这还不够吗?