spring boot打war包发布
由于公司一贯的方式都是将war包布在中间件tomcat下运行
所以这次springboot项目需要打war包
how to?
第一步:pom.xml 文件中,打包方式需要修改成war
<packaging>war</packaging>

第二步:pom.xml 文件中,spring-boot-starter-web下需要移除自带的tomcat
<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> 第三步:修改启动类,继承SpringBootServletInitializer
@SpringBootApplication
@EnableScheduling
public class Application extends SpringBootServletInitializer {
@Override
protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
// 注意这里要指向原先用main方法执行的Application启动类
return builder.sources(Application.class);
}
}
第四步:pom.xml 中添加依赖,否则报错
cannot access javax.servlet.ServletException
[ERROR] class file for javax.servlet.ServletException not found
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>3.1.0</version>
<scope>provided</scope>
</dependency>
遇到的问题: 1. lomkor 日志文件依赖的jar包,下载不了,我这边将日志部分删除了 2. nested exception is java.lang.NoClassDefFoundError: javax/el/ELManager
springboot 2.*的版本支持jdk1.8+, tomcat 最好是8.+。 我这边用的是7.0.42,所以需要将jar包 C:\Program Files\JetBrains\IntelliJ IDEA 2018.1.5\lib中的el-api.jar包复制到tomcat的lib下
重启tomcat 生效 3. 打开页面,能打开了,但是发现一个问题,页面跳转的时候,有时候能将war包名字带着,有时候不能

点击新增按钮

新增之后点击确认增加

url中少了war包名称uuu
还有一个报错,却不影响执行
nested exception is javax.validation.ValidationException: HV000183: Unable to initialize 'javax.el.E
pom.xml 中没有引入对应的jar依赖
我引入一下,重现打包,部署后发现错误still exists
<dependency>
<groupId>javax.el</groupId>
<artifactId>javax.el-api</artifactId>
<version>2.2.4</version>
</dependency>
<dependency>
<groupId>org.glassfish.web</groupId>
<artifactId>javax.el</artifactId>
<version>2.2.4</version>
</dependency> 后来还发现,中文乱码问题

路径跳转问题,将action 修改成为 th:action = "@{/xxx}" 
乱码的问题: 后来将数据库加密,去除之后,乱码问题也解决了
spring boot打war包发布的更多相关文章
- Spring Boot 打war包并利用docBase指定根目录为打包的工程
指定根目录有两种方式 1:直接将打的war包名称定义为ROOT 2:利用docBase 比如笔者war包名为xibu.war,将该war包丢到/Users/archerlj/Library/apach ...
- Spring Boot 打 war 包的步骤
## Spring Boot 打 war 包的步骤 1. 添加 spring-boot-start-tomcat 的 provided 依赖 ``` <dependency> <gr ...
- spring boot 打 war包
spring boot .spring cloud打 war包,并发布到tomcat中运行 1.pom文件修改 <packaging>war</packaging> 2.< ...
- spring boot 打war包部署,打jar包
官方文档:http://docs.spring.io/spring-boot/docs/current/reference/htmlsingle/#howto-create-a-deployable- ...
- Spring boot打包war包
1.设置打包的类型(war/jar) 在pom.xml里设置 <packaging>war</packaging> 2.移除嵌入式tomcat插件 //在pom.xml里找到s ...
- Spring Boot导出jar包发布
一:事由 现在的项目组开发项目使用的是Spring Boot的技术,开发的时候是直接通过一个入口主函数来启动项目的.如果将项目交给客户,怎样才能正确的发布运行呢?百度了一下有关的知识,大概了解到是通过 ...
- Spring Boot以War包启动
1.IDEA Spring Initializer自动构建的war包项目,自动生成的Initializer类,用于外部Tomcat容器启动该项目时调用,如果仍然使用主类main函数方式启动则与此类无关 ...
- spring boot打war包启动Tomcat失败
Tomcat启动失败:最后一个causy by :java.lang.NoSuchMethodError: org.apache.tomcat.util.res.StringManager.getMa ...
- Spring Boot打war包和jar包的目录结构简单讲解
Spring Boot项目可以制作成jar包和war包,其目录结构是不一样的,具体的如下所示: 1.war包目录结构分析WAR(Web Archivefile)网络应用程序文件,是与平台无关的文件格式 ...
随机推荐
- Word AddIn编译出现LINK2001 _main
链接错误"unresolved external symbol _main" Article last modified on 2002-3-2 ------------- ...
- [LeetCode] 560. Subarray Sum Equals K_Medium
Given an array of integers and an integer k, you need to find the total number of continuous subarra ...
- 网站nginx负载下因程序错误导致多节点重复处理请求的解决过程
目录 前言 问题来了 问题又来了 问题分析 困惑 转机 后续 前言: 这是我上周工作过程中的一次解决问题的过程.解决的是nginx负载环境下,因为应用程序异常导致某一请求被多节点站点重复处理的问题. ...
- JAVA如何调用mysql写的存储过程
存储过程是干什么的,自己百度,百度上讲的比我讲的好.为什么要用存储过程,这样可以提高效率.废话少说,直接上代码: 首先说一下语法:在mysql中写存储过程 DELIMITER $$ CREATE /* ...
- php7安装memchced扩展
tar -zxvf memcached-3.0.3.tgz cd memcached-3.0.3 phpize yum install libmemcached libmemcached-dev ./ ...
- fafu 1411
想了好久都没想到怎么去判断当分类dp的时候大于或者等于要求的 值时应该怎么半 后来经过停了 qlx的想法 然后就 敲了出来 这题说的是 一个整数 分解成几个素数的和 按这个数的含有的最大素数 进行排 ...
- cf463d
这题说的是给了k个串算出这k个串的最长公共子序列,这k个串每个串都是由1--n的数字组成的. 将第一串的数字按照顺序重新编号为123...n 然后后面的串按照这个编号重新标号,就转化为下面每个串大最长 ...
- nginx日志过滤相同IP方法
nginx日志过滤相同IP方法分析nginx日志的时候,统计ip怎么过滤重复的?awk '{print $2}' nginx.log |sort -rn |uniq -c |sort -rn |hea ...
- C/C++之全局、static对象/变量的初始化问题
关于全局.static对象/变量的初始化问题 1. 全局变量.static变量的初始化时机:main()函数执行之前(或者说main中第一个用户语句执行之前). 2. 初始化顺序. 1)全局对象.外部 ...
- 热心网友设计出更美的Windows 10开始菜单
开始菜单应该算是Windows操作系统的标志之一,Win8时微软曾做了大刀阔斧的改革,没想到招致一片负面评价,最终紧急推出了Win8.1系统. Win10推出后,微软等于整合了磁贴和传统风格,但也做不 ...