1.创建一个类继承SpringBootServletInitializer类,重写configure方法
import org.springframework.boot.builder.SpringApplicationBuilder;
import org.springframework.boot.web.support.SpringBootServletInitializer;
public class SpringBootStart extends SpringBootServletInitializer {
@Override
protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
return builder.sources(RegisterServerApplication.class);
}
}
2.RegisterServerApplication类是以前jar包的启动类
public class RegisterServerApplication
{
public static void main(String[] args) {
SpringApplication.run(RegisterServerApplication.class, args);
}
3.pom去掉tomcat包
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
<exclusions>
<exclusion>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
</exclusion>
</exclusions>
</dependency>
4.pom添加servlet包
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>jstl</artifactId>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>3.1.0</version>
</dependency>
5.如果出现访问不了接口问题就注入DispatcherServlet
@Bean
public ServletRegistrationBean dispatcherRegistration(DispatcherServlet dispatcherServlet) {
return new ServletRegistrationBean(dispatcherServlet,"/*");
}
6.如果出现上传不了文件问题增加如下配置
@Bean(name = "multipartResolver")
public MultipartResolver multipartResolver(){
CommonsMultipartResolver resolver = new CommonsMultipartResolver();
resolver.setDefaultEncoding("UTF-8");
resolver.setResolveLazily(true);//resolveLazily属性启用是为了推迟文件解析,以在在UploadAction中捕获文件大小异常
resolver.setMaxInMemorySize(40960);
resolver.setMaxUploadSize(50*1024*1024);//上传文件大小 50M 50*1024*1024
return resolver;
}
7.如果出现isPersent 没有找到这个方法的错误,是spring包的冲突问题,看看有没有低版本的spring包,例如我这里是pom如下,去除就好了
<dependency>
<groupId>org.codehaus.xfire</groupId>
<artifactId>xfire-spring</artifactId>
<version>1.2.6</version>
<exclusions>
<exclusion>
<artifactId>spring</artifactId>
<groupId>org.springframework</groupId>
</exclusion>
</exclusions>
</dependency>
8.tomcat里放两个war包报错,单独启动不报错处理
在配置文件添加如下配置
spring.jmx.default-domain=project1
spring.jmx.default-domain=project2
9.报java.lang.UnsatisfiedLinkError: /usr/local/java/jdk1.8.0_91/jre/lib/amd64/libawt_xawt.so: libXtst.so错误,在启动脚本里添加如下命令
-Djava.awt.headless=true
以金蝶启动脚本为例
版权声明:本文为qq_31324077原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。