Maven或Ant用于自动部署并在远程服务器上运行项目

时间:2017-03-20 08:16:01

标签: java maven ssh ant

根据自动化我的项目生命周期,我有一个问题。 现在我这样做:

  1. 使用Ant构建我的项目,获取目标jar,手动重命名(添加 后缀,如version2.0-myProject.jar);
  2. 通过ssh连接到远程服务器,打开FreeComander并复制jar 文件和INI属性文件到远程服务器上的不同文件夹;
  3. 重新运行我的应用程序抛出putty(exec bat文件在服务器上, 其中包含所有cmd run命令。此.bat包含对Lunux服务器的plink.exe远程命令,其中包含app的实例。
  4. 我想做什么: 我想要自动化部署过程,包括构建阶段和应用程序运行阶段, 我想做这个: 执行buld时,用户要求输出jar文件后缀(如varian2-myapp.jar),向用户询问属性文件,以及稍后将执行的程序,并询问用户是否为JVM分配了内存(现在它是cmd命令的一部分) .bat文件)

    我的应用很简单,包含15个类和3个外部库。我想让部署变得简单并自动化这个过程,我知道Maven或Ant Build可以帮助我。请说一下,使用这个构建系统的任务更舒适。

1 个答案:

答案 0 :(得分:0)

使用Maven,您可以使用Maven Release Plugin将您的包(可能是带有jar和其他依赖项的zip)部署到Maven存储库(您可以在其中一个服务器上运行)。

此页面可以帮助您入门:

http://maven.apache.org/maven-release/maven-release-plugin/

使用Ant,您可以使用Apache Ivy:

http://ant.apache.org/ivy/history/2.2.0/index.html

然后,您需要一种方法来告诉服务于您的应用的服务器拉包并开始使用它(安装它)。
您可以编写一个简单的脚本来拉动您可以使用

远程触发的仓库
plink -m

正如您现在所做的那样,或者使用一个预先构建的自动化软件,例如https://puppet.com/