maven - 为什么“mvn deploy”命令正在重建 .jar?
问题描述
我正在开发spring-boot
Java 应用程序。我正在尝试.jar
使用带有 profile 的 maven 构建和发布。但不知何故,mvn deploy
命令再次重建.jar
。
option 1:
我使用mvn clear install -Pdev
并mvn deploy -Dmaven.install.skip=true
没有配置文件及其部署默认.jar
文件
option 2:
我也在发布期间传递了个人资料 ID。mvn deploy -Dmaven.install.skip=true
它工作正常,但它再次重建一切,我们不想在期间再次使用 maven 配置文件名称mvn deploy
pom.xml
<project...>
...
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
<profiles>
<profile>
<id>dev</id>
<properties>
<spring.profile.id>dev</spring.profile.id>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
<scope>provided</scope>
</dependency>
</dependencies>
</profile>
<profile>
<id>prod</id>
<properties>
<spring.profile.id>prod</spring.profile.id>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
<version>2.1.6.RELEASE</version>
</dependency>
</dependencies>
</profile>
</profiles>
</project>
mvn clean install -Pdev
[INFO] --- maven-jar-plugin:3.1.2:jar (default-jar) @ xyz-
profile
[INFO] Building jar: /sys_apps_01/jenkins/workspace/xyz-profile-0.0.3-
SNAPSHOT.jar
mvn deploy
mvn deploy -Pdev
I am getting below logs for both deploy command:
[DEBUG] isUp2date: false (Destination /sys_apps_01/jenkins/workspace/xyz-
profile-0.0.3-SNAPSHOT.jar not found.)
[INFO] Building jar: /sys_apps_01/jenkins/workspace/xyz-profile-0.0.3-
SNAPSHOT.jar
谁能帮我理解,为什么在部署时再次重建?
解决方案
您应该阅读 Maven 生命周期以了解正在发生的事情:https ://maven.apache.org/guides/introduction/introduction-to-the-lifecycle.html
因此,当您执行deploy
命令时,maven 会触发生命周期中的所有先前目标:
- 证实
- 编译
- 测试
- 包裹
- 核实
- 安装
然后deploy
推荐阅读
- templates - Prestashop 1.6 - 存储在数据库和订单页面后,“已发货”模板中未显示跟踪号
- google-app-engine - App Engine:如何在本地导入 Datastore
- android - kWS Android Web 服务器无法打开 JSP 文件
- cmd - CMD 命令:Conjuction [wsgen: wsdl 和 inlineScemas]
- apache-spark - 您如何查看 pyspark 中为 Window 函数创建的分区大小?
- c++ - 错误:'operator*' 不匹配(操作数类型为 'QGenericMatrix<4, 4, float>' 和 'QGenericMatrix<4, 3, float>')
- php - 电报机器人不起作用:来自 webhook 的错误响应:找到 302
- html - 如何在angularjs的ng-options中使用json对象设置键和值
- javascript - 防止在 react-simple-maps 中出现蓝色路径矩形
- amazon-web-services - AWS Route53 2 isp 的故障转移配置不起作用