jenkins远程部署maven项目
目标
在 gitlab 中存在一个名为 test-maven-app 的 Java 应用,将这个应用通过 Jenkins 自动构建,构建后的 jar 包传送到目标服务器,并自动运行;
准备
远程部署配置
下载插件
下载插件 Publish Over SSH 并重启 Jenkins 后,在
Dashboard->系统管理->系统配置中找到 Publish Over SSH 配置项,新增 SSH Servers 并输入远程主机账号密码后,点击测试连接提示成功,如下:
jenkins-远程部署_主机配置连接信息 提示
注意远程目录为文件上传的开始目录,不设置默认为/root
新建 Jenkins 项目
新建一个名为 test-maven-project 的 maven 流水线(需安装Maven Integration插件),并完成如下配置:
源码管理
设置流水线关联的源码,先手动构建一次,看下是否能构建成功;

jenkins-maven-源码管理
远程上传 jar 包并运行
在 构建后操作 设置项中,添加一个名为 Send build artifacts over SSH 的操作步骤,并完成如下设置:

提示
在 public over ssh 插件的全局配置中,我们设置了远程目录为: /usr/local/java/java-application
在此处,远程目录为: /test-maven-app,则真正的远程目录为:/usr/local/java/java-application/test-maven-app
上传 jar 包的目录为:/usr/local/java/java-application/test-maven-app/target/my-app-0.0.1-SNAPSHOT.jar
设置去掉路径前缀 target/,则最终,jar 包的路径为:/usr/local/java/java-application/test-maven-app/my-app-0.0.1-SNAPSHOT.jar
构建
完成上述步骤,构建项目即可成功将程序远程运行起来!

