springboot 如何发布到外部的web服务器上
2016-09-26 17:54
459 查看
一般做springboot开发时都会直接使用内置的tomcat服务器,调试与发布都很方便。
但是不排除在某些情况下需要将spring boot工程打包成常规的war包,并发布到相应的web服务器。
要做到这点拢共分三步:
1、修改pom.xml中的配置,添加该项依赖,并将scope设置为provided。这样的作用是,覆盖关于tomcat的依赖,当进行打包操作时,不会把tomcat相关的包打进来。
2、添加一个新的启动类,由于不采用@SpringBootApplication方式,而是发布到外部的webserver上,所以需要修改启动方式。MagicCube.class是原来的SpringBootApplication注解的启动类,如果想要加载配置文件,则需要添加"classpath:applicationContext.xml"属性
3、使用mvn clean package -Dmaven.test.skip=true进行打包即可生成war包,将该war包copy到tomcat的webapp目录下即可正常使用。
这里有一个小问题是,在使用springboot时,url路径中没有工程目录,而打包到tomcat中后url中会比之前多一个工程名。造成测试和发布的URL不一致,这个问题,不知怎么解决。
<packaging>war</packaging>
但是不排除在某些情况下需要将spring boot工程打包成常规的war包,并发布到相应的web服务器。
要做到这点拢共分三步:
1、修改pom.xml中的配置,添加该项依赖,并将scope设置为provided。这样的作用是,覆盖关于tomcat的依赖,当进行打包操作时,不会把tomcat相关的包打进来。
<pre name="code" class="html"> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-tomcat</artifactId> <span style="color:#FF0000;"><scope>provided</scope></span> </dependency>
2、添加一个新的启动类,由于不采用@SpringBootApplication方式,而是发布到外部的webserver上,所以需要修改启动方式。MagicCube.class是原来的SpringBootApplication注解的启动类,如果想要加载配置文件,则需要添加"classpath:applicationContext.xml"属性
public class ServletInitializer extends SpringBootServletInitializer{ @Override protected SpringApplicationBuilder configure(SpringApplicationBuilder application) { return application.sources(MagicCube.class,"classpath:applicationContext.xml"); } }
3、使用mvn clean package -Dmaven.test.skip=true进行打包即可生成war包,将该war包copy到tomcat的webapp目录下即可正常使用。
这里有一个小问题是,在使用springboot时,url路径中没有工程目录,而打包到tomcat中后url中会比之前多一个工程名。造成测试和发布的URL不一致,这个问题,不知怎么解决。
<packaging>war</packaging>
相关文章推荐
- spring boot发布war包,部署到外部tomcat服务器
- spring boot 项目打成war包发布至外部web容器运行
- 如何利用自己的电脑做服务器发布tomcat的WEB项目供外网访问
- 关于如何在服务器上搭建tomcat并发布自己的web项目
- Spring Boot 项目发布到 Tomcat 服务器
- 如何利用自己的电脑做服务器发布tomcat的WEB项目供外网、局域网访问
- spring boot 打包成jar 包在发布到服务器上
- Spring Boot 项目发布到 Tomcat 服务器的操作步骤
- 常规容器下SpringBootServletInitializer如何实现web.xml作用解析
- SpringBoot之——发布到外部Tomcat
- 如何让路由器外部的电脑能访问路由器内部的WEB服务器[TP-LINK]
- spring_boot 发布成war包 ,部署到外部的tomcat
- 如何利用自己的电脑做服务器发布tomcat的WEB项目供外网访问
- 如何让路由器外部的电脑能访问路由器内部的WEB服务器[TP-LINK]
- 如何利用自己的电脑做服务器发布tomcat的WEB项目供外网访问
- 如何利用自己的电脑做服务器发布tomcat的WEB项目供外网访问
- 如何部署同一个Spring boot web 应用到不同的环境
- Idea Spring boot+Maven 打包war 发布 外部tomcat
- Spring Boot 项目发布到 Tomcat 服务器
- 如何将spring boot工程打成JAR包到服务器上运行