centos 上发布springboot项目(两种方式)
一丶方式一采用springboot 自带的tomcat
1.首先在项目pom.xml文件中添加
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<executable>true</executable>
</configuration>
</plugin>
</plugins>
</build>
2.否则用java -jar java -jar springboot.war 会包找不到主程序 或者按照网上的说法在后面 加上spring入口的主类也会报错找不到springboot的类
3.java -jar java -jar springboot.war启动项目
4.运行结果
启动成功
二丶方式2采用独立的tomcat 不使用自带的tomcat方式
1.在start-web中排除springboot自带的tomcat
<!-- Web starter依赖引入,会增加web容器、springweb、springmvc、jackson-databind等相关的依赖 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
<!-- 移除嵌入式tomcat插件 -->
<exclusions>
<exclusion>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
</exclusion>
</exclusions>
</dependency>
[email protected] 注解的启动类修改 继承SpringBootServletInitializer
/**
* 修改启动类,继承 SpringBootServletInitializer 并重写 configure 方法
*/
@SpringBootApplication
public class SpringBootStartApplication extends SpringBootServletInitializer {
@Override
protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
// 注意这里要指向原先用main方法执行的Application启动类
return builder.sources(SpringBootStartApplication.class);
}
//
public static void main(String[] args) throws Exception {
/**
*
*/
SpringBootStartApplication sbsa = new SpringBootStartApplication();
SpringApplication.run(SpringBootStartApplication.class, args);
}
}
3.此时就一个将springboot 的war包,放入到自己的tomcat容器中啦! 正常启动即可 不过这种方式也就要带上项目名访问