java - 如何自动运行maven命令,而不是通过命令?

标签 java maven pom.xml maven-plugin parent-pom

我正在开发一个项目,需要构建一个 Maven 管道来进行版本控制和发布。 我这样做是这样的:

  1. 通过运行 mvn versions:set -DnewVersion=2.0.0 手动更改版本.
  2. 检查项目详细信息并检测它是快照还是发布。我有自己的自定义插件和一个返回最终版本的参数,例如2.0.0-SNAPSHOT但是我如何返回这个值并将其提供给另一个插件?
  3. 我编译项目并生成具有新名称(从 2 开始)的 jar。
  4. 还有...

我知道我可以通过 CL 命令处理每一步,但我想知道并使我困惑的是如何将所有内容嵌入 pom.xml然后运行 ​​mvn install没有别的。

每个插件都需要一些应该能够改变这一点的参数。我知道我可以使用<argument>标签 <configuration> ,但有些插件没有参数标签。

我怎样才能有一个可靠的解决方案并预先配置我的父 POM 中的所有内容? 另外,我确实有自己的插件,但我不确定是否可以将所有内容嵌入其中,我只是运行 myplugin:Install .

最佳答案

为了构建快照,您通常只需在项目上运行mvn clean verify。如果您需要特殊插件,可以按照插件描述中的建议在配置部分中配置它们。

要构建发布版本,您应该使用构建服务器(例如 Jenkins)。在那里,您可以比在 Maven 中更轻松地构建所有步骤。如果由于某种原因,您不能这样做,请使用 Maven 发布插件。

关于java - 如何自动运行maven命令,而不是通过命令?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60207847/

相关文章:

java - 如何在maven中添加到原始父级的相对路径

Gradle 尝试解压缩 pom 类型的依赖项

java - 创建一个函数,打印出 args 中解析的正整数的数量

maven - 如何防止 Maven 在依赖项的 pom 文件中使用 <repository>?

java - 无法读取 .txt 文件。 Try Catch 异常结束程序

maven - Grails应用程序包使用Maven开战

java - exec-maven-plugin 说不能运行指定的程序,即使它在 PATH 上

Maven 循环属性定义

java - 如何将导入和提供的范围应用于 Maven 依赖项?

java - Java 关闭钩子(Hook)中的死锁