Jenkins部署瘦身jar包

更改项目打包方式

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>
  1. 打包项目

    mvn install

  2. 在target/pack目录下可见jar文件,启动项目命令

    java -jar 文件名.jar

  3. 若修改后的代码没有更改依赖与资源文件,直接提交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查看运行日志

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值