如何将SpringBoot项目打成可导入到其他项目的jar包,按照官方教程的话,打成的jar导入到其他项目无效。

发布于 2022-09-07 19:48:48 字数 224 浏览 39 评论 0

自己打包的jar和引入的jar格式不一致,不知道什么原因,目前导入的jar,无法正常使用。
clipboard.png
clipboard.png

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

回忆那么伤 2022-09-14 19:48:48

你或许需要:
1、剔除一些不需要的文件,如Application和ApplicationTests等
2、不能使用springboot自带打包,使用普通maven打包

<build>
   <plugins>
      <plugin>
         <groupId>org.apache.maven.plugins</groupId>
         <artifactId>maven-compiler-plugin</artifactId>
         <configuration>
            <source>1.8</source>
            <target>1.8</target>
         </configuration>
      </plugin>
   </plugins>
</build>

注意:spring-boot-maven-plugin打包,出现了bug。虽然目的项目引用了该打包项目,但是任然无法引用jar中的类,因为springboot-maven-plugin打包的第一级目录为Boot-INF,无法引用

注-1、test范围指的是测试范围有效,在编译和打包时都不会使用这个依赖

注-2、compile范围指的是编译范围有效,在编译和打包时都会将依赖存储进去

注-3、provided依赖:在编译和测试的过程有效,最后生成war包时不会加入,诸如:servlet-api,因为servlet-api,tomcat等web服务器已经存在了,如果再打包会冲突

注-4、 runtime在运行的时候依赖,在编译的时候不依赖

注-5:加入本地Maven路径,类似:

C:\Users\ofcard\.m2\repository\com\scn7th\ding-robot-bind-send\0.0.1-SNAPSHOT>mvn install:install-file -Dfile=ding-robot-bind-send-0.0.1-SNAPSHOT.jar -DgroupId=com.scn7th -DartifactId=ding-robot-bind-send -Dversion=0.0.1-SNAPSHOT -Dpackaging=jar

参考:
将一个项目打成一个jar包,导入到另一个项目中并调用
Gradle构建SpringBoot并打包可运行的jar配置
springboot打包成jar文件无法正常运行,解决办法已经找到
在spring boot项目(maven)中引入其他 spring boot项目(jar)

朕就是辣么酷 2022-09-14 19:48:48

spring-boot的项目,如果需要“打包给其他项目用“就不能用spring-boot的插件打包,用默认的打包
但是这样之后的jar包是不能java -jar运行的

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文