java - 自动化发布和部署过程

标签 java maven

我正在致力于自动化项目中从标记到部署的发布过程。 我为此创建了一个 java 项目,这将是一个集成从标记、构建 jar 到部署的所有阶段的地方。

现在,出于标记和版本控制的目的,我想使用 Maven 发布插件,但我可以看到所有 Maven 命令都必须通过命令行执行,这使得检查结果和输出变得困难。 我认为可以解决此问题的一个选项是我是否可以使用某些 api 执行 Maven 命令 [就像我们有 svnkit对于 subversion ]。虽然我可以通过java通过命令行执行maven命令[Runtime.exec ] 但话又说回来,问题是检查结果和输出。

关于 maven 的 java 库有什么建议吗?或任何其他方式做同样的事情? 我的基本目标是控制项目的版本并标记构建。

编辑:

不再支持 Maven 嵌入器:http://maven.40175.n5.nabble.com/Maven-Embedder-td4708683.html

编辑:

我找到了出路,hudson提供了一个maven发布插件,然后我开发了一个hudson java客户端。所以我将能够通过参数控制maven发布。

最佳答案

已经有一个与maven相关的解决方案。这是maven-release-plugin它完全支持给定的步骤。

prepare-goal maven-release-plugin 会准确执行诸如检查所有更改是否已提交并在 svn 中创建标签之类的操作。

那么为什么要通过 Java 来执行它呢?您可以使用 Jenkins 来实现此类目的,或者仅使用命令行,例如:

mvn -B release:prepare release:perform

仅此而已。

关于java - 自动化发布和部署过程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18140057/

相关文章:

java - 按下按钮时 Android 应用程序崩溃

java - 从 Java 中的格式化字符串中解析日期

java - Maven测试执行错误

java - 在 Eclipse 中执行 "mvn dependency:tree"*

java - Spring 版本自动更改为 3.0.5.RELEASE 尽管我指定了 3.1.0

Java:如何将用户输入分配给数组

java - 获取导致源代码语法错误的parserRuleContexts

java - 从 BLOB 数据类型转义特殊字符

java - 支持构建 Java/maven 项目吗?

maven - 如何创建 Java EE 7 Maven IntelliJ 项目