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 ...
随机推荐
- Centos7配置fstp
Centos7配置fstp 1 创建用户 useradd -m -d /data/sftp_data/user1 -s /usr/sbin/nologin -g sftp user1 -m:自动创 ...
- 跟着 GPT-4 从0到1学习 Golang 并发机制(三)
目录 一.前言 二.开聊 2.1 关于 goroutine 泄露问题 2.2 内存模型 2.3 Race Detector 检测数据竞争 三.总结 一.前言 话接上回<跟着 GPT-4 从0到1 ...
- 一个Web项目实现多个数据库存储数据并相互切换
1.使用场景 多数据源使用场景一般为: 主从数据库切换 读写分离 兼容旧库 2.具体实现 实现原理 Spring2.x的版本中采用Proxy模式,就是在方案中实现一个虚拟的数据源,并且用它来封装数据源 ...
- [爬虫]1.2.1 HTML标签和属性
HTML(HyperText Markup Language)是一种用于创建网页的标记语言.HTML文档由一系列的HTML标签构成,每个标签都有自己的意义和用途.HTML标签通常成对出现,由一个开始标 ...
- 2021-3-13 xml的增删改查
public void XmlAdd(string filename, List<People> pList) { try { List<People> peoples = X ...
- 如何用 Java 写一个 Java 虚拟机
项目链接 https://github.com/FranzHaidnor/haidnorJVM haidnorJVM 使用 Java17 编写的 Java 虚拟机 意义 纸上得来终觉浅,绝知此事要躬行 ...
- EntityCleanFramework
EF几乎是按照领域的概念诞生,它可以和Clean结合(ECF是我新想出的名字).ECF 是为了统一业务架构开发方式,也可以说成在 微服务架构 中服务的通用开发方式.当有了统一开发方式后,协作将更上一层 ...
- java文件共享实现方案
写在前面,由于项目要求负载,又不想大动干戈采用比较贵的设备和高大上的框架,经过一番研究,想使用文件共享方式实现文件的跨服务器访问.本方案采用了jcifs和smbj框架,若想用,请自行查找资源.此为初步 ...
- 静态vlan的划分
静态vlan的划分 1,toupu图 2,配置id与子网掩码 2.1,pc,server的ip与子网配置 pc5 pc6 pc7 pc8 server1 server2 3,vlan的静态划分 1,v ...
- 21.1 使用PEfile分析PE文件
PeFile模块是Python中一个强大的便携式第三方PE格式分析工具,用于解析和处理Windows可执行文件.该模块提供了一系列的API接口,使得用户可以通过Python脚本来读取和分析PE文件的结 ...