在项目开发中,通常部署过程包括以下步骤 :
从中检入代码所有正在进行的项目都进入SVN(版本控制系统)或源代码库并对其进行标记.
从SVN下载完整的源代码.
构建应用程序.
将构建输出WAR或EAR文件存储到公共网络位置.
从网络获取文件并将文件部署到生产站点.
更新了包含申请日期和更新版本号的文档.
问题陈述
上述部署过程通常涉及多个人.一个团队可以处理代码的签入,其他团队可以处理构建等.由于涉及手动工作并且由于多团队环境,很可能错过任何步骤.例如,可能无法在网络计算机上替换旧版本,部署团队再次部署旧版本.
解决方案
通过组合自动化部署过程以下&;;
Maven,用于构建和发布项目.
SubVersion,源代码存储库,用于管理源代码.
用于管理项目二进制文件的远程存储库管理器(Jfrog/Nexus).
更新项目POM.xml
我们将使用Maven Release插件创建自动发布过程.
例如:bus-core- api项目POM.xml.
4.0.0 bus-core-api bus-core-api 1.0-SNAPSHOT jar http://www.svn.com scm:svn:http://localhost:8080/svn/jrepo/trunk/ Framework scm:svn:${username}/${password}@localhost:8080: common_core_api:1101:code Core-API-Java-Release Release repository http://localhost:8081/nexus/content/repositories/ Core-Api-Release org.apache.maven.plugins maven-release-plugin 2.0-beta-9 false deploy [bus-core-api-release-checkin]-< /scmCommentPrefix>
在Pom.xml中,以下是我们使用的重要元素 :
Sr.No. | 元素&说明 |
---|---|
1 | SCM 配置从Maven查看源代码的位置的SVN位置. |
2 | 存储库 构建WAR/EAR/JAR或其他任何位置的位置代码构建成功后将存储工件. |
3 | 插件 maven-release-plugin配置为自动化部署过程. |
Maven Release Plug-in
Maven使用 maven-release-plugin执行以下有用任务.
mvn release:clean
它清理最后一个发布过程不成功的工作区.
mvn release:rollback
在最后一个r的情况下,回滚对工作区代码和配置所做的更改elease进程不成功.
mvn release:prepare
执行多个操作,例如 :
检查是否存在任何未提交的本地更改.
确保没有SNAPSHOT依赖项.
更改应用程序的版本并从中删除SNAPSHOT要发布的版本.
将pom文件更新为SVN.
运行测试
提交修改后的POM文件.
在subversion中标记代码
增加版本号并附加SNAPSHOT以备将来发布.
提交修改后的POM文件到SVN.
mvn release:perform
使用先前定义的标签检查代码并运行Maven部署目标,以部署将war或内置工件存储到存储库.
让我们打开命令控制台,转到 C:\> MVN> bus-core-api 目录并执行关注 mvn 命令.
> mvn release:prepare
Maven将开始构建项目.构建成功后,运行以下 mvn 命令.
> mvn release:perform
一旦构建成功,您可以验证存储库中上传的JAR文件.