前言:
现时同学们对“如何把tomcat部署到eclipse中”大致比较讲究,大家都想要知道一些“如何把tomcat部署到eclipse中”的相关内容。那么小编同时在网络上汇集了一些关于“如何把tomcat部署到eclipse中””的相关知识,希望咱们能喜欢,我们快快来学习一下吧!1.将pom.xml中
(1)<packaging>改为war
(2)把这一段注掉或者删除,没有的话则无需更改,我是按照自己的项目来的
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<verbose>true</verbose>
<fork>true</fork>
<!-- 在setting.xml文件进行配置 -->
<executable>${JAVA8_HOME}/bin/javac</executable>
</configuration>
</plugin>
(3)加上这个依赖,作用是:将内置的tomcat插件不打包进去
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
<scope>provided</scope>
</dependency>
2.应用启动类修改,需要继承SpringBootServletInitializer,并重写configure方法。
import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.builder.SpringApplicationBuilder;
@SpringBootApplication
@MapperScan(basePackages = { "com.example.demo.mapper" }, sqlSessionFactoryRef = "sqlSessionFactory")
public class Demo1Application extends SpringBootServletInitializer {
public static void main(String[] args) {
SpringApplication.run(Demo1Application.class, args);
}
protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
// 注意这里要指向原先用main方法执行的Application启动类
return builder.sources(Demo1Application.class);
}
}
3.使用maven打包
在项目的根目录也就是在包含pom.xml那一层,使用 mvn clean package 命令
打包文件,看到BUILD SUCCESS成功生成war包。
4.放入Tomcat中运行
将生成的war包放入tomcat/webapp中,再去bin下,运行startup.bat就可以了,
输入localhost:8080/demo-1-0.0.1-SNAPSHOT(应用项目名)/view/login/index.html能登录就可以了
问题记录
首先,系统默认生成的是tomcat8的jar包
其次,系统环境变量的JDK版本要和你的项目保持一致。
我就是因为不一致找了很久的原因。我的项目是JDK1.8,系统环境变量是JDK1.7,丢到tomcat日志只有logback初始化的打印,再没有其他信息,后面就提示已经启动。但访问controller之类的都是404.
还有就是,如果你是新建的demo,其他文件都是从其他地方复制过来的话,切记,要把配置文件中的名称与你的外部的包名类名一致,不然很容易就报错,你可以先将部署在eclipse中的tomcat先测试你的spring boot项目
成功之后再打包。
最后,你发现明明spring boot中可以正常运行的项目,但是在tomcat无法正常运行,那么有可能是因为,spring boot访问时无需添加项目名,但是tomcat里需要在项目名后实现每一次的跳转。
标签: #如何把tomcat部署到eclipse中