学习笔记 ---spring boot 在STS里将项目打包成war
spring boot通过在maven的pom.xml里面添加spring boot自带的打包插件,可以直接将项目打包成可执行的jar文件
这种jar文件,spring boot 内嵌了tomcat,因为可以直接通过jar -jar jar文件路径,直接跑起服务,但这时,如果我有需求,想直接打包成war包,然后自己放在tomcat里面执行呢,这时,我们可以这么干
1.修改pom.xml,将packing由jar改成war,并添加tomcat的依赖,scope->provided表明,如果打包时,需要内嵌tomcat就自动提供
2.打开DemoApplication ,让他直接继承SpringBootServletInitializer,并重写configure方法,该方法的作用提供类似web.xml的配置服务
package com.example.demo;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.builder.SpringApplicationBuilder;
import org.springframework.boot.context.web.SpringBootServletInitializer;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@SpringBootApplication
@RestController
public class DemoApplication extends SpringBootServletInitializer{
@Override
protected SpringApplicationBuilder configure(SpringApplicationBuilder application) \{
return application.sources(DemoApplication.class);
\}
@RequestMapping(value = \{"/",""\})
public String helloboot()\{
return "hello boot !!" ;
\}
public static void main(String\[\] args) \{
SpringApplication.run(DemoApplication.class, args);
\}
好到这里,我们就可以直接右键,Run As - >Maven build..输入package的命令,直接打成war包了,
打成的war包直接在项目的target可以看到
这时,你就可以把war报扔到你的tomcat的webapp目录下,直接跑tomcat就可以启动服务了,在浏览器输入http://localhost:8080/demo
测试
还没有评论,来说两句吧...