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>

2.@SpringBootApplication 注解的启动类修改 继承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容器中啦! 正常启动即可 不过这种方式也就要带上项目名访问


猜你喜欢

转载自blog.csdn.net/zzxwx/article/details/79716653