解决IDEA打包SpringBoot,jar包打包不出去问题

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了解决IDEA打包SpringBoot,jar包打包不出去问题相关的知识,希望对你有一定的参考价值。

参考技术A Command line输入

执行完后,lib目录应该是这样的
-libs
-------sqljdbc4.jar
-------ownrepo
---------------sqljdbc4
----------------------1.0

回到idea右侧maven面板

执行
LifeCycle ----- clean
LifeCycle ----- install
如果发现控制台执行结果不是0的话,你应该检查控制台信息,是否有出错的情况

生成的war包可以在左侧的$YourProject -> target 目录下看到war包

SpringBoot+Docker项目打包(jar)和部署

参考技术A 一、打包SpringBoot项目
1.检查pom文件是否有maven打包插件

2.选择IDEA右侧Maven,点击install(如果配置了maven的环境变量,则可以在控制台输入:mvn install 命令,同样可以打包jar包)

等待maven打包,当控制台出现下列日志时表示打包成功

如下图所示,打包完会出现一个.jar文件,即打包好的jar包。

3.在控制台输入:java -jar /Users/heyou/Desktop/springboot-0.0.1-SNAPSHOT.jar 来检查jar包是否可以正常运行。

二、Docker部署jar包
前提条件:

1.构建Dockerfile
在已经打包好的jar包的同级目录下新建Dockerfile
Mac 可在IDEA控制台输入vim Dockerfile 进入vim编辑,输入:

其中:
FROM 命令指定运行环境和版本
VOLUME:一个特别指定的目录,用于存储数据,该命令的作用是在/var/lib/docker创建一个名为tmp的目录,在开启redis服务时,需要特别指定redis的数据存储在哪个文件夹,此时这个命令就十分有用

ADD:拷贝文件并且重命名(需要输入两个参数:即jar包名称和重命名后的名称)

ENTRYPOINT:容器启动时运行的命令,相当于我们在命令行中输入java -jar xxxx.jar,为了缩短 Tomcat 的启动时间,添加java.security.egd的系统属性指向/dev/urandom作为 ENTRYPOINT
2.创建docker文件夹,将jar包与Dockerfile移动到该文件夹,进入该文件夹,运行命令:

此时会将该项目构建成一个image(镜像),运行命令:

3.运行镜像:

注:“:”左边的端口号是暴露给外部访问的端口,而右边端口是docker内部镜像运行的端口

4.打开浏览器访问部署的项目地址,检查项目是否运行正常

以上是关于解决IDEA打包SpringBoot,jar包打包不出去问题的主要内容,如果未能解决你的问题,请参考以下文章

SpringBoot+Docker项目打包(jar)和部署

SpringBoot将项目打包成jar包

Springboot项目打包引入lib目录下jar包

05_SpringBoot打jar/war包解决第三方依赖jar包的问题

Spring boot如何引入本地jar包?

spring boot6.idea下springboot打包成jar包和war包,并且可以在外部tomcat下运行访问到