ruoyi打包jar分离配置部署
原文链接: https://blog.csdn.net/m0_60164821/article/details/126871755
要求:生成的jar独立打包,不在将子jar合并到主jar中
1.在admin的pom中添加如下配置
-
<!-- 分离lib -->
-
<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>
-
<!-- 依赖包输出目录,将来不打进jar包里 -->
-
<outputDirectory>${project.build.directory}/lib</outputDirectory>
-
<excludeTransitive>false</excludeTransitive>
-
<stripVersion>false</stripVersion>
-
<includeScope>runtime</includeScope>
-
</configuration>
-
</execution>
-
</executions>
-
</plugin>
-
-
<!-- copy资源文件 -->
-
<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}/resources</outputDirectory>
-
</configuration>
-
</execution>
-
</executions>
-
</plugin>
-
-
<!-- 打jar包时忽略配置文件 -->
-
<plugin>
-
<groupId>org.apache.maven.plugins</groupId>
-
<artifactId>maven-jar-plugin</artifactId>
-
<configuration>
-
<excludes>
-
<exclude>**/*.yml</exclude>
-
<exclude>**/*.xml</exclude>
-
</excludes>
-
</configuration>
-
</plugin>
-
<!-- spring boot repackage -->
-
<plugin>
-
<groupId>org.springframework.boot</groupId>
-
<artifactId>spring-boot-maven-plugin</artifactId>
-
<configuration>
-
<layout>ZIP</layout>
-
<includes>
-
<include>
-
<groupId>non-exists</groupId>
-
<artifactId>non-exists</artifactId>
-
</include>
-
</includes>
-
</configuration>
-
<executions>
-
<execution>
-
<goals>
-
<goal>repackage</goal>
-
</goals>
-
</execution>
-
</executions>
-
</plugin>
-
<plugin>
-
<groupId>org.springframework.boot</groupId>
-
<artifactId>spring-boot-maven-plugin</artifactId>
-
<version>2.1.1.RELEASE</version>
-
<configuration>
-
<fork>true</fork> <!-- 如果没有该配置,devtools不会生效 -->
-
</configuration>
-
<executions>
-
<execution>
-
<goals>
-
<goal>repackage</goal>
-
</goals>
-
</execution>
-
</executions>
-
</plugin>
-
<plugin>
-
<groupId>org.apache.maven.plugins</groupId>
-
<artifactId>maven-war-plugin</artifactId>
-
<version>3.0.0</version>
-
<configuration>
-
<failOnMissingWebXml>false</failOnMissingWebXml>
-
<warName>${project.artifactId}</warName>
-
</configuration>
-
</plugin>
找到ruoyi_admin模块下的pom.xml文件,找到<plugins>标签,本次我是把里面的<plugin>标签注释掉,然后直接把上面代码复制粘贴的。
2.使用maven对项目进行打包,就按照下图画框顺序,先点击clean,在install
打包之后的结构为
3.在桌面(放哪都行,除了这个项目里面)新建一个文件夹,将lib、resources、ruoyi-admin.jar复制粘贴进去,然后,去到RuoYi-master\bin,将run.bat文件也复制粘贴到你新建的文件夹里面。
4.去到你新建的文件夹,此时里面已经有了这四个文件
记事本或者其他方式打开run.bat,修改里面内容,按照我下方代码,直接复制粘贴就可以用
-
@echo off
-
echo.
-
echo [信息] 使用Jar命令运行Web工程。
-
echo.
-
title 窗口标题
-
cd %~dp0
-
-
set JAVA_OPTS=-Xms256m -Xmx1024m -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=512m
-
-
-
java -jar %JAVA_OPTS% -Dloader.path=resources,lib ruoyi-admin.jar
-
-
-
pause
5.运行run.bat项目启动成功(也就是直接双击这个文件)
6.项目更新(就是说你自己新建的模块或者若依别的模块你有改动时)
多模块版本更新时仅需在lib文件夹下替换指定jar包(
admin他是会运行所有模块的,当你有所改动时,比如你新建的一个reading模块有改动,
你需要去到你的项目里面,将那个readingjar包复制过来,
在你单独提取出来的这个文件内替换掉它
)
再举个例子:
比如我项目新建的模块 ,jh_product,我在里面代码有改动,然后重新打包运行项目了
此时我要去到
下方图片所示位置找到jh_product的jar包,然后把它复制到新建文件夹的那个lib处(可以覆盖,也可以直接把原本那个删掉在复制这个)
7.关于项目配置文件 (修改你新建的这个文件夹哈)
配置文件在resources文件夹下,可手动进行修改
例如,启动项目是80端口,有时候会重复,你可以去到下方的application.yml,将端口号改了
保存,
此时就在双击run.bat,然后去到浏览器,输入locahostL8087/ 就可以访问啦