未分類 24 3 月 2020 springboot 项目上线部署用 war 包还是 jar 包部署比较好?有没有具体的原因? springboot 项目上线部署用 war 包还是 jar 包部署比较好?有没有具体的原因? 資深大佬 : zhuwd 25 有已有的 Tomcat 或者其他 servlet 容器,用 war. 否则用 jar. 就是打包方式有点不一样,没啥本质区别. 大佬有話說 (14) 資深大佬 : huntcool001 /t/658309 資深大佬 : oneisall8955 appassembler-maven-plugin 打包 tar.gz比较喜欢这个的是因为解压后,文件夹 conf = resources 比如在 resources 下放一些三方配置文件,是可以直接读取到的,如果用 jar 那就得新建一个目录来存放 資深大佬 : wongy 如果有运维 tomcat 的经验,有相关脚本工具巴拉巴拉,就用 war,否则用 jar二的帖子里有人回用 docker,但是 docker 里不也是跑的 jar 或者 war 么… 資深大佬 : chendy 有 jsp 就要用 war 否则的话随意。war 也可以用 java -jar 跑起来的 資深大佬 : napsterwu @chendy 回答用 docker 但不说明理由的,基本上都是不动脑的人 資深大佬 : julyclyde Thin Jar 吧,Spring 开发人员有开发相应的 Plugin 代替官方 Plugin 。将 Dependencies 和 应用 Jar 分开,比较适合容器部署,那种巨型 Jar 对于容器太扯蛋。不过 Spring Boot 2.3 开始内置 Build Docker 功能了,也是分层( Docker Layers )打包的思路。 資深大佬 : hantsy @julyclyde 这个年代,还没有用 Docker 才是没脑子的人。 資深大佬 : hantsy Spring Boot 的 Thin jar 使用,https://www.baeldung.com/spring-boot-thin-jar 資深大佬 : hantsy thin jar … 不如叫 “jar with dependencies aside”。。 資深大佬 : szq8014 Docker 跑 Java 坑那么多….我就没搞懂为什么 Docker 都出来这么多年了,在限制了 core 数量后,core 识别还是物理机核数 資深大佬 : NeinChn 就我一个把 fatjar 解开部署的? 資深大佬 : cheng6563 @hantsy 用也分用的好用的差啊。 資深大佬 : julyclyde @NeinChn #11 内存还要显示设置范围,不然吃的也是宿主机的内存。。 資深大佬 : kkkkkrua ‘Make JAR, not WAR.’ — Josh Long