因为项目之前一直是打war包,用tomcat执行的。
有一天领导来说:有个场景不支持springboot2.0,你打成一个jar吧。
于是我先注释了现有build.gradle里的
//compile 'org.springframework.boot:spring-boot-starter-tomcat:2.0.5.RELEASE'
并添加了一个task来打这个jar
//这个必须要放在配置文件头部位置 buildscript { repositories { mavenLocal() maven {url "https://plugins.gradle.org/m2/"} mavenCentral() } dependencies { classpath "us.kirchmeier:gradle-capsule-plugin:1.0.2" //第一步:加载插件依赖 } } plugins { //第二步:引用插件 id "us.kirchmeier.capsule" version "1.0.2" } /** 多个任务就需要用命令一个一个打包,gradle后面跟着每个任务的名称 */ task cmskeyword(type: FatCapsule) { //第三步:定义任务,然后在命令行执行gradle ServerMonitor打包 applicationClass 'com.start.Start' baseName 'cmskeyword' }
执行完了后,在libs下有2个jar包
进入到这个目录下,执行 java -jar cmskeyword-capsule.jar 结果如下:说明打包成功
中间遇到有一些坑,还是对
![](https://i-blog.csdnimg.cn/blog_migrate/dc71e2e84ff5213b9d97f73a0a3c4d47.png)
这个提示让我百思不得其解。
一开始我思考是不是由于之前打war包,都是通过tomcat8运行的,没改好配置,折腾半天也不是,我已经成功改回了springboot启动类启动,也可以正常访问。
后来通过google找到一个类似的报错,那个是异常字符<"> at index0:"JDK的问题,外国友人最后的处理方式是删了环境变量里的"
我就把我本地的tomcat的环境变量删了,重启下就好了。
一般来讲,tomcat不需要配环境变量,但是我本地为什么有,依旧是个谜。我也忘了。。