node {
//Jenkins的maven版本
def mvnHome = tool 'maven3.6'
//git分支
def branchAll = "${env.branch}"
def branch = "dev"
if("${branchAll}"=='origin/master'||"${branchAll}"=='origin/dev'){
def branchOut = branchAll.split("/")
branch = branchOut[1]
}
//连接远程服务器进行发布,部署
stage ('Pull & Run') {
def remote = [:]
remote.name = 'test'
if("${branch}"=='release'){
remote.host ='172.168.0.110'
remote.user = 'root'
remote.password ='123456'
}else{
remote.host ='172.168.0.111'
remote.user = 'root'
remote.password ='123456'
}
remote.allowAnyHosts= true
if("${branch}"=='master'){
writeFile file:'tempStart.sh', text:'''
kill -9 $(netstat -nlp | grep :8080 | awk '{print $7}' | awk -F"/" '{ print $1 }')
if [ -d "xxx" ];then
cd /root/xxx
git reset --hard
git pull
else
git clone -b master ssh://git@xxxxxxx.git
cd /root/xxx
fi
cd ./xxx/
echo "编译打包";
mvn clean install -U
echo "代码质量检测";
mvn sonar:sonar
cd ./target
nohup java -jar -Xms512M -Xmx512M -Dspring.profiles.active=*.jar >/dev/null &
if [ $? -eq 0 ]; then
echo "模块执行成功";
else
echo "模块执行失败";
fi
'''
}else ("${branch}"=='dev'){
writeFile file:'tempStart.sh', text:'''
kill -9 $(netstat -nlp | grep :8080 | awk '{print $7}' | awk -F"/" '{ print $1 }')
if [ -d "xxx" ];then
[video(video-8PGqMbZO-1716354551447)(type-bilibili)(url-https://player.bilibili.com/player.html?aid=1804892953)(image-https://img-blog.csdnimg.cn/img_convert/d03a705143646f4f3f6ea879d59b2788.png)(title-必看视频!获取2024年最新Java开发全套学习资料 备注Java)]
cd /root/xxx
git reset --hard
git pull
else
git clone -b dev ssh://git@xxxxxxx.git
cd /root/xxx
fi
cd ./xxx/
echo "编译打包";
mvn clean install -U
echo "代码质量检测";
mvn sonar:sonar
cd ./target
nohup java -jar -Xms512M -Xmx512M -Dspring.profiles.active=test *-exe.jar >/dev/null &
if [ $? -eq 0 ]; then
echo "模块执行成功";
else
echo "模块执行失败";
fi
'''
}
sshScript remote: remote,script: "tempStart.sh"
}
//发起邮件
stage("发送邮件"){
echo "发送邮件"
emailext body: '''
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8" />
<title>${ENV, var="JOB_NAME"}-第${BUILD_NUMBER}次构建日志</title>
</head>
<body leftmargin="8" marginwidth="0" topmargin="8" marginheight="4" offset="0">
<a href="${PROJECT_URL}">${PROJECT_URL}</a>
<hr size="2" width="100%" align="center" />
<table width="95%" cellpadding="0" cellspacing="0" style="font-size: 11pt; font-family: Tahoma, Arial, Helvetica, sans-serif">
<tbody>
<tr>
<td>(本邮件由程序自动下发,请勿回复!)</td>
</tr>
<tr>
<td>
<h2>
<font color="#FF0000">构建结果 - ${BUILD_STATUS}</font>
</h2>
</td>
</tr>
<tr>
## 总结
> 这份面试题几乎包含了他在一年内遇到的所有面试题以及答案,甚至包括面试中的细节对话以及语录,可谓是细节到极致,甚至简历优化和怎么投简历更容易得到面试机会也包括在内!也包括教你怎么去获得一些大厂,比如阿里,腾讯的内推名额!
某位名人说过成功是靠99%的汗水和1%的机遇得到的,而你想获得那1%的机遇你首先就得付出99%的汗水!你只有朝着你的目标一步一步坚持不懈的走下去你才能有机会获得成功!
成功只会留给那些有准备的人!

,而你想获得那1%的机遇你首先就得付出99%的汗水!你只有朝着你的目标一步一步坚持不懈的走下去你才能有机会获得成功!
成功只会留给那些有准备的人!
[外链图片转存中...(img-GEPvtegm-1716355881209)]