更改项目打包方式
1.在要打包的项目pom文件夹加入以下语句,使依赖与资源文件与jar包分离
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<configuration>
<!-- 包含文件配置,现在只打包 com 文件夹 -->
<includes>
<include>
**/com/**
</include>
</includes>
<archive>
<manifest>
<!-- 配置加入依赖包 -->
<addClasspath>true</addClasspath>
<classpathPrefix>lib/</classpathPrefix>
<useUniqueVersions>false</useUniqueVersions>
<!-- Spring Boot 启动类(自行修改) -->
<mainClass>com.ruoyi.RuoYiApplication</mainClass>
</manifest>
<manifestEntries>
<!-- 外部资源路径加入 manifest.mf 的 Class-Path -->
<Class-Path>resources/</Class-Path>
</manifestEntries>
</archive>
<!-- jar 输出目录 -->
<outputDirectory>${project.build.directory}/pack/</outputDirectory>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<!-- 复制依赖 -->
<executions>
<execution>
<id>copy-dependencies</id>
<phase>package</phase>
<goals>
<goal>copy-dependencies</goal>
</goals>
<configuration>
<!-- 依赖包 输出目录 -->
<outputDirectory>${project.build.directory}/pack/lib</outputDirectory>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<artifactId>maven-resources-plugin</artifactId>
<!-- 复制资源 -->
<executions>
<execution>
<id>copy-resources</id>
<phase>package</phase>
<goals>
<goal>copy-resources</goal>
</goals>
<configuration>
<resources>
<resource>
<directory>src/main/resources</directory>
</resource>
</resources>
<!-- 资源文件 输出目录 -->
<outputDirectory>${project.build.directory}/pack/resources</outputDirectory>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>8</source>
<target>8</target>
</configuration>
</plugin>
</plugins>
<finalName>${project.artifactId}</finalName>
</build>
-
打包项目
mvn install
-
在target/pack目录下可见jar文件,启动项目命令
java -jar 文件名.jar
-
若修改后的代码没有更改依赖与资源文件,直接提交jar包文件进行替换即可
Jenkins部署jar包项目
1.在Jenkins中新建一个maven项目,选择git地址与分支后,开始构建项目
2.下载nssm,将jar打包成服务运行,下载地址
NSSM - the Non-Sucking Service Manager
3.下载后解压得到nssm.exe,将文件夹目录配置到环境变量
4.在本机磁盘打开Jenkins的项目工作空间,在项目的打包地址*\target\pack下新建start.bat文件,内容为
java -jar 文件名.jar > service.log
5.打开命令行,使用nssm安装服务
nssm install 自定义服务名 系统绝对路径\start.bat
6.打开Jenkins项目的配置,添加部署后重启服务命令
nssm restart 自定义服务名
7.部署项目,在项目工作空间下的打包地址*\target\pack\service.log查看运行日志