Maven 项目工程
maven打包java --jar
1.安装jdk
2.安装maven --安装非常简单 网上教程很多,此步骤忽略--
3.配置jdk/maven环境变量
# java_jdk
export JAVA_HOME=/usr/java/jdk1.8.0_131
export CLASSPATH=$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/lib
export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH:$HOMR/bin
export PATH=/usr/maven/bin/:$PATH # java_maven
export MAVEN_HOME=/usr/maven
export PATH=${PATH}:${MAVEN_HOME}/bin

4.配置maven私服地址 阿里仓库地址
添加阿里仓库地址:
Maven 仓库默认在国外, 国内使用难免很慢,我们可以更换为阿里云的仓库。
修改 maven 根目录下的 conf 文件夹中的 settings.xml 文件,在 mirrors 节点上,添加内容如下:159行左右
<mirrors>
<mirror>
<id>alimaven</id>
<name>aliyun maven</name>
<url>http://maven.aliyun.com/nexus/content/groups/public/</url>
<mirrorOf>central</mirrorOf>
</mirror>
</mirrors>
Jenkins上配置全局 私服:
需要安装Managed files插件
Manage jenkins -->Managed files -->Add a new Config -->Maven settings.xml



maven工程项目中设置

5.git拉取项目代码/并进入到项目代码目录
git clone http://192.168.16.20/batar-entrance-guard/entrance-guard.git
cd entrance-guard/entrance-guard
6.进行maven编译Java项目 jar
mvn clean install -Dmaven.test.skip=true
7.后台启动程序
nohup /usr/bin/java -jar $SERVICE_PATH/$SERVICE_NAME.jar --server.port=9921 --spring.profiles.active=dev >>/dev/null 2>&1 &
Jenkins结合shell自动部署:
构建一个maven工程任务






shell脚本案例:
case $Status in
Deploy)
{
echo "Status:$Status"
echo "Version:$BUILD_NUMBER"
SERVICE_NAME="entrance-guard-manage"
SERVICE_PATH="/project/batar-entrance-guard/entrance-guard"
SERVICE_BACKUP="/backup/batar-entrance-guard/entrance-guard"
BUILD_ID=DONTKILLME PIDS=`ps -ef |grep java | grep 9921 | awk '{print $2}'`
if [ "$PIDS" != "" ];then
/usr/bin/kill -9 $PIDS
fi
cd $SERVICE_PATH
cp -rf $WORKSPACE/entrance-guard/entrance-guard-manage/target/$SERVICE_NAME.jar $SERVICE_PATH
nohup /usr/bin/java -jar $SERVICE_PATH/$SERVICE_NAME.jar --server.port=9921 --spring.profiles.active=dev >>/dev/null 2>&1 & #备份
mv $WORKSPACE/entrance-guard/entrance-guard-manage/target/$SERVICE_NAME.jar $SERVICE_BACKUP/$BUILD_NUMBER.jar
}
;;
Rollback)
{
echo "Status:$Status"
echo "Version:$Version"
SERVICE_NAME="entrance-guard-manage"
SERVICE_PATH="/project/batar-entrance-guard/entrance-guard"
SERVICE_BACKUP="/backup/batar-entrance-guard/entrance-guard"
BUILD_ID=DONTKILLME rm -rf $SERVICE_PATH/$SERVICE_NAME.jar
cp $SERVICE_BACKUP/$Version.jar $SERVICE_PATH/$SERVICE_NAME.jar PIDS=`ps -ef |grep java | grep 9921 | awk '{print $2}'`
if [ "$PIDS" != "" ];then
/usr/bin/kill -9 $PIDS
fi
cd $SERVICE_BACKUP
nohup /usr/bin/java -jar $SERVICE_PATH/$SERVICE_NAME.jar --server.port=9921 --spring.profiles.active=dev>>/dev/null 2>&1 & }
;;
*)
exit
;;
esac
Maven 项目工程的更多相关文章
- maven项目工程目录约定
使用maven创建的工程我们称它为maven工程,maven工程具有一定的目录规范,如下: src/main/java —— 存放项目的.java文件 src/main/resources —— 存放 ...
- Maven项目工程目录
maven工程目录规范: src/main/java 存放项目的.java文件 src/main/resources 存放项目的资源文件,如spring.hibernate配置文件 src/t ...
- (四)Maven项目工程目录约定
使用maven创建的工程我们称它为maven工程,maven工程具有一定的目录规范,如下: src/main/java 存放项目的.java文件 src/main/resources 存放项目资源文件 ...
- maven项目工程报错:cannot be resolved to a type
1.在本地仓库中,搜索“_maven.repositories”所有匹配项,并彻底删除 2.然后再删除“.lastUpdated”所有匹配项 3.最后再重新在eclipse中执行操作:update d ...
- maven集成SSM项目,jetty部署运行——搭建maven项目部署jetty试运行(一)
今天闲来没事采用maven集成一个SSM框架来复习复习,下面开始我的复习之旅,慢慢来,不着急,哈哈,不忙时候敲两下,整起来. 工具为Eclipse,首先需要建立一个maven工程,file右键new- ...
- maven项目转eclipse工程的命令:eclipse.bat
call mvn clean:clean call mvn eclipse:eclipse -DdownloadSources=true @pause 复制以上内容,保存为eclipse.bat 以后 ...
- eclipse 创建maven 项目 动态web工程报错
Eclipse 创建maven 项目 动态web工程 注:Eclipse版本为(Version: Mars.1 Release (4.5.1))maven版本为(apache-maven-3.3.9) ...
- maven(二) maven项目构建ssh工程(父工程与子模块的拆分与聚合)
前一节我们明白了maven是个什么玩意,这一节就来讲讲他的一个重要的应用场景,也就是通过maven将一个ssh项目分割为不同的几个部分独立开发,很重要,加油 --WH 一.maven父工程与子模块的拆 ...
- Java开发小技巧(三):Maven多工程依赖项目
前言 本篇文章基于Java开发小技巧(二):自定义Maven依赖中创建的父工程project-monitor实现,运用我们自定义的依赖包进行多工程依赖项目的开发. 下面以多可执行Jar包项目的开发为例 ...
- eclipse 创建maven 项目 动态web工程完整示例
需求表均同springmvc案例 此处只是使用maven 注意,以下所有需要建立在你的eclipse等已经集成配置好了maven了,说白了就是新建项目的时候已经可以找到maven了 没有的话需要安装m ...
随机推荐
- 好用的log4j.properties配置文件(按照级别打印日志,每天生成不同类型的日志,可以打印sql日志)
日志按照级别分类 log4j.rootLogger = INFO,stdout,D,E,I #ShuChuDaoDaYingTai log4j.appender.stdout = org.apache ...
- 【调制解调】VSB 残留边带调幅
说明 学习数字信号处理算法时整理的学习笔记.同系列文章目录可见 <DSP 学习之路>目录,代码已上传到 Github - ModulationAndDemodulation.本篇介绍 VS ...
- WebSSH远程管理Linux服务器、Web终端窗口自适应(二)
上一篇:Gin+Xterm.js实现WebSSH远程Kubernetes Pod 支持用户名密码认证 支持SSH密钥认证 支持Web终端窗口自适应 支持录屏审计 Go SSH golang.org/x ...
- 如何修改NuGet默认全局包文件夹的位置?
由于一些历史原因,重装系统成为Windows用户解决疑难杂症的祖传手艺.受此影响,给硬盘分盘几乎成为了一种执念,少则C.D两个盘,夸张一点的5~6个盘的也不是没有. PS:macOS和Linux一直都 ...
- 2.融合进阶:Stacking与Blending
1 堆叠法Stacking 1.1 堆叠法的基本思想 堆叠法Stacking是近年来模型融合领域最为热门的方法,它不仅是竞赛冠军队最常采用的融合方法之一,也是工业中实际落地人工智能时会考虑的方案之一. ...
- MAUI+MASA Blazor 兼容性测试报告及分析
目录 1. 背景 2. 目的 3. 测试目标 4. 预期结果 5. 测试策略及范围 6. 测试结果与分析 7. 附加内容 8. 结尾 1. 背景 MASA Blazor组件是一款基于Material ...
- C#中DataTable的一些使用(后续继续补充)
C#中DataTable的一些使用 新建一个DataTable DataTable table = new DataTable(); table.Columns.Add("姓名", ...
- Matlab2021a打包jar包问题(linux、windows)
都有chatgpt了,实在不想写博客....不过还是记录一下问题吧. 我们在用matlab打包jar包的时候,经常会出现打包出错的问题,但无非注意以下几点就行了: 1.打包方式 这个还是很简单的,而且 ...
- Linux-用户管理命令(必须是超级管理员-root)
useradd [名字] 创建一个新用户 (home 下创建) useradd -d [路径][名字] 路径中的名字是文件 , 登录用的后面的名字 passwd [用户名] 设置密码, ...
- OpenApi(Swagger)快速转换成 TypeScript 代码 - STC
在现代的 Web 开发中,使用 OpenAPI(以前称为 Swagger)规范来描述和定义 API 已经成为一种常见的做法.OpenAPI 规范提供了一种统一的方式来描述API的结构.请求和响应,使得 ...