CICD - Maven 部署及配置实战 【六】

Maven安装部署

https://maven.apache.org/download.cgi

https://dlcdn.apache.org/maven/maven-3/3.9.3/binaries/apache-maven-3.9.3-bin.tar.gz

传入Jenkins服务器上

[root@jenkinsnew Jenkins]# tar zxvf apache-maven-3.9.3-bin.tar.gz

[root@jenkinsnew Jenkins]# mv apache-maven-3.9.3 /usr/local/maven

[root@jenkinsnew Jenkins]# /usr/local/maven/bin/mvn -v
Apache Maven 3.9.3 (21122926829f1ead511c958d89bd2f672198ae9f)
Maven home: /usr/local/maven
Java version: 11.0.19, vendor: Oracle Corporation, runtime: /usr/local/src/jdk-11.0.19
Default locale: en_US, platform encoding: UTF-8
OS name: "linux", version: "3.10.0-957.el7.x86_64", arch: "amd64", family: "unix"

Git提交代码

[root@jenkinsnew ~]# git clone git@192.168.40.130:magedu/java-maven.git
Cloning into 'java-maven'...
warning: You appear to have cloned an empty repository.
[root@jenkinsnew ~]# cd java-maven
[root@jenkinsnew java-maven]# ll
total 0
[root@jenkinsnew java-maven]# mkdir demo-1
[root@jenkinsnew java-maven]# cd demo-1/
[root@jenkinsnew demo-1]# mv /root/testgit/SpringBootDemo/demo-1/* .
[root@jenkinsnew demo-1]# ll
total 4
-rw-r--r--. 1 root root 2030 Jul  3 13:51 pom.xml
drwxr-xr-x. 4 root root   30 Mar 26 08:40 src
drwxr-xr-x. 9 root root  249 Jul  3 13:52 target
[root@jenkinsnew demo-1]# cd ..
[root@jenkinsnew java-maven]# ll
total 0
drwxr-xr-x. 4 root root 46 Jul  3 14:44 demo-1
[root@jenkinsnew java-maven]# git add ./
[root@jenkinsnew java-maven]# git commit -m "add README"
[master (root-commit) 70606a8] add README
 23 files changed, 247 insertions(+)
 create mode 100644 demo-1/pom.xml
 create mode 100644 demo-1/src/main/java/com/study/boot/MainApplication.java
 create mode 100644 demo-1/src/main/java/com/study/boot/controller/HelloController.java
 create mode 100644 demo-1/src/main/java/com/study/boot/mapper/StudentMapper.java
 create mode 100644 demo-1/src/main/java/com/study/boot/pojo/Student.java
 create mode 100644 demo-1/src/main/resources/application.properties
 create mode 100644 demo-1/src/main/resources/mappers/StudentMapper.xml
 create mode 100644 demo-1/target/SpringBootDemo-1.0-SNAPSHOT.jar
 create mode 100644 demo-1/target/SpringBootDemo-1.0-SNAPSHOT.jar.original
 create mode 100644 demo-1/target/classes/application.properties
 create mode 100644 demo-1/target/classes/com/study/boot/MainApplication.class
 create mode 100644 demo-1/target/classes/com/study/boot/controller/HelloController.class
 create mode 100644 demo-1/target/classes/com/study/boot/mapper/StudentMapper.class
 create mode 100644 demo-1/target/classes/com/study/boot/pojo/Student.class
 create mode 100644 demo-1/target/classes/mappers/StudentMapper.xml
 create mode 100644 demo-1/target/maven-archiver/pom.properties
 create mode 100644 demo-1/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst
 create mode 100644 demo-1/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst
 create mode 100644 demo-1/target/maven-status/maven-compiler-plugin/testCompile/default-testCompile/createdFiles.lst
 create mode 100644 demo-1/target/maven-status/maven-compiler-plugin/testCompile/default-testCompile/inputFiles.lst
 create mode 100644 demo-1/target/surefire-reports/TEST-com.study.mybatis.test.MyBatisTest.xml
 create mode 100644 demo-1/target/surefire-reports/com.study.mybatis.test.MyBatisTest.txt
 create mode 100644 demo-1/target/test-classes/com/study/mybatis/test/MyBatisTest.class
[root@jenkinsnew java-maven]# git commit -m "add README"
# On branch master
nothing to commit, working directory clean
[root@jenkinsnew java-maven]# git push -u origin master
Counting objects: 56, done.
Delta compression using up to 6 threads.
Compressing objects: 100% (32/32), done.
Writing objects: 100% (56/56), 19.46 MiB | 0 bytes/s, done.
Total 56 (delta 2), reused 0 (delta 0)
To git@192.168.40.130:magedu/java-maven.git
 * [new branch]      master -> master
Branch master set up to track remote branch master from origin.
[root@jenkinsnew java-maven]#

测试代码

Jenkins 跑起来
java.io.IOException: Cannot run program "java" (in directory "/var/lib/jenkins/workspace/First-Maven/demo-1"): error=2, No such file or directory

[root@jenkinsnew bin]# pwd
/usr/local/src/jdk-11.0.19/bin
[root@jenkinsnew bin]# ln -s /usr/local/src/jdk-11.0.19/bin/ja
jar        jarsigner  java       javac      javadoc    javap
[root@jenkinsnew bin]# ln -s /usr/local/src/jdk-11.0.19/bin/ja
jar        jarsigner  java       javac      javadoc    javap
[root@jenkinsnew bin]# ln -s /usr/local/src/jdk-11.0.19/bin/java /usr/local/bin/java
[root@jenkinsnew bin]# cd /usr/local/bin/
[root@jenkinsnew bin]# ll
total 0
lrwxrwxrwx. 1 root root 35 Jul  3 15:01 java -> /usr/local/src/jdk-11.0.19/bin/java

Jenkins中配置Maven

如果没有需要到AvailablePlugins进行 安装添加 或者 自行下载

配置Maven路径参数

Jenkins通过Maven打包

 

通过Pushlish Over SSH 将打包后的jar包 传到对应服务器上

安装Publish Over SSH插件

配置Publish over SSH 参数 到 192.168.40.130 Tomcat服务器上

配置Maven项目中 pom.xml 参数 并且执行Sendfile or execute command over SSH

配置详细参数

超时机制

输出命令时一定要注意不要让窗口卡住,不然Jenkins会认为一直没完成

nohup java -jar /root/xxoo/demo*.jar > mylog.log 2>&1 &

 优化Pre-Step执行构建前执行目标服务器脚本

posted @ 2023-07-03 12:37  しみずよしだ  阅读(58)  评论(0)    收藏  举报