maven安装
- maven的下载和安装
# 下载maven文件
wget https://mirrors.tuna.tsinghua.edu.cn/apache/maven/maven-3/3.8.8/binaries/apache-maven-3.8.8-bin.tar.gz# 解压到指定目录
tar -zxvf apache-maven-3.8.8-bin.tar.gz -C /usr/local/software# 切换到指定目录,创建maven本地存储仓库
cd /usr/local/software/apache-maven-3.8.8
mkdir repository
- 配置环境变量,
vim /etc/profile
在文件末尾加上以下内容。
MAVEN_HOME=/usr/local/software/apache-maven-3.8.8
export PATH=${MAVEN_HOME}/bin:${PATH}
- 使用
source /etc/profile
指令更新profile文件 - 输入
mvn -version
查看是否安装成功。
Git安装
cd /home
# 下载git源码安装所需要的工具(不安装工具包,后面编译git会报错)
yum install -y curl-devel expat-devel gettext-devel openssl-devel zlib-devel gcc perl-ExtUtils-MakeMaker# 下载源码包
wget https://mirrors.edge.kernel.org/pub/software/scm/git/git-2.0.0.tar.gz# 解压缩
tar -zxvf git-2.0.0.tar.gz# 切换到解压好的目录
cd git-2.0.0# 指定安装路径
./configure --prefix=/usr/local/software/# 编译安装
make
sudo make install
# 安装好后在前面配置的安装路径/usr/local/software/下生成一个git文件
# 原来的压缩包和解压后包就可以删除了
cd ..
rm -fr git-2.0.0
rm -fr git-2.0.0.tar.gz# 查看是否安装成功
git --version
相关插件下载
Jenkins全局工具配置
- 设置maven的settings.xml
- 设置jdk路径
- 设置git路径
- 指定maven安装位置
部署MAVEN项目
New Item
Source Code Mangement
填写仓库地址
填写git仓库所属账号的username和password,id和description随意填。
Build Trigger
Pre Steps
在构建之前执行的步骤。
Build
构建时的配置
Root POM:指定pom.xml文件位置。这里的基本路径是从项目的跟路径开始,
clean package -Dmaven.test.skip=true
:清除之前的包,跳过测试并打包
Post
在构建之后执行的步骤。
查看Jenkins的home目录,home目录下的workspace就是工作目录,存储了打包好的jar包
关于BUILD_ID:
jenkins默认会在构建完成后,杀掉构建过程中由shell命令触发的衍生进程。
jenkins根据BUILD_ID识别某个进程是否为构建过程的衍生进程,故修改BUILD_ID后,jenkins就无法识别是否为衍生进程,则此进程能在后台保留运行。
结论就是Jenkins程序只负责运行伪命令行nuhup 命令,并不保证是否成功运行 nuhup后面的命令。
BUILD_ID=springboot-test# jenkins中打包好的jar包路径
PACKAGED_JAR_ABSOLUTE_PATH=/var/lib/jenkins/workspace/main-test/springboot-test/target/springboot-test-1.0-SNAPSHOT.jar# 自定义jar包运行时的名称
RUNNING_JAR_NAME=springboot-test-1.0-SNAPSHOT.jar# 自定义jar包存储路径
RUNNING_JAR_STORE_PATH=/home/code/# jar包绝对路径
RUNNING_JAR_ABSOLUTE_PATH=$RUNNING_JAR_STORE_PATH/$RUNNING_JAR_NAMEecho "正在停止服务 $RUNNING_JAR_NAME"
pid=`ps -ef | grep $RUNNING_JAR_NAME | grep -v grep | awk '{print $2}'`
if [ -n "$pid" ]
thenkill -9 "$pid"echo "服务 $RUNNING_JAR_NAME 已停止"
elseecho "服务 $RUNNING_JAR_NAME 没有在运行"
fiecho "移动打包好的jar包到目录 $RUNNING_JAR_STORE_PATH"
if [ ! -d "$RUNNING_JAR_STORE_PATH" ]
thenmkdir -p $RUNNING_JAR_STORE_PATH
fi
mv "$PACKAGED_JAR_ABSOLUTE_PATH" "$RUNNING_JAR_ABSOLUTE_PATH"
echo "移动jar包完成"echo "正在启动服务 $RUNNING_JAR_NAME"
cd "$RUNNING_JAR_STORE_PATH"
nohup java -jar -Xms256m -Xmx512m "$RUNNING_JAR_NAME" >> test.log 2>&1 &
echo "服务 $RUNNING_JAR_NAME 已启动"
至此配置完成,就可以构建项目了