Eclipse SpringBoot项目打包为WAR及在Tomcat运行教程
194 浏览量
更新于2024-09-02
1
收藏 342KB PDF 举报
本文主要讲解了如何在Eclipse环境下,使用SpringBoot工程创建WAR包,并在Tomcat服务器中运行的方法。内容包括了修改POM.xml配置、排除内嵌Tomcat依赖以及调整资源文件的处理方式。
一、Eclipse中SpringBoot打WAR包
1. 配置POM.xml文件:
在项目的pom.xml文件中,需要更改`packaging`标签为`war`,以指示Maven构建WAR包。同时,为了在外部Tomcat中运行,需要引入`javax.servlet-api`依赖并设置其作用范围为`provided`,表示由服务器提供。此外,需要排除SpringBoot的内嵌Tomcat插件,即`spring-boot-starter-tomcat`。
```xml
<packaging>war</packaging>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<scope>provided</scope>
</dependency>
<exclusions>
<exclusion>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
</exclusion>
</exclusions>
```
2. 资源文件配置:
对于静态资源(如HTML、CSS、JavaScript等),需要调整`resources`部分,使得它们被打包到`META-INF/resources`目录下,以便在Tomcat中正确访问。同时,不要忘记包含主资源目录`src/main/resources`。
```xml
<resources>
<resource>
<directory>src/main/webapp</directory>
<targetPath>META-INF/resources</targetPath>
<includes>
<include>/</include>
</includes>
</resource>
<resource>
<directory>src/main/resources</directory>
<includes>
<include>/</include>
</includes>
<filtering>false</filtering>
</resource>
<resource>
<directory>src/main/java</directory>
<excludes>
<exclude>/*.java</exclude>
</excludes>
</resource>
</resources>
```
二、在Tomcat中运行SpringBoot WAR包
1. 构建WAR包:
保存以上配置后,在Eclipse中执行Maven的`clean`和`install`命令,将会在`target`目录下生成名为`your-project-name.war`的WAR文件。
2. 部署到Tomcat:
将生成的WAR文件复制到Tomcat的`webapps`目录下。如果Tomcat正在运行,它会自动解压并部署WAR文件。
3. 启动或重启Tomcat:
如果Tomcat未运行,启动Tomcat服务器;如果已经运行,只需重启即可加载新的WAR应用。可以通过Tomcat的管理界面或者命令行工具来操作。
4. 访问应用:
在浏览器中输入`http://localhost:8080/your-project-name`(根据实际情况替换`your-project-name`和端口号8080),如果一切配置无误,你应该能看到SpringBoot应用正常运行。
总结,这个过程涉及到SpringBoot项目结构的调整,Maven的WAR打包配置,以及Tomcat的部署与运行。通过这些步骤,开发者可以在不使用内嵌Tomcat的情况下,将SpringBoot应用部署到独立的Tomcat服务器上,适用于生产环境中的多应用部署和管理。
点击了解资源详情
点击了解资源详情
点击了解资源详情
2022-04-03 上传
2021-11-03 上传
2020-09-07 上传
2019-03-08 上传
2018-11-27 上传
2021-12-20 上传
weixin_38574132
- 粉丝: 7
- 资源: 909
最新资源
- 火炬连体网络在MNIST的2D嵌入实现示例
- Angular插件增强Application Insights JavaScript SDK功能
- 实时三维重建:InfiniTAM的ros驱动应用
- Spring与Mybatis整合的配置与实践
- Vozy前端技术测试深入体验与模板参考
- React应用实现语音转文字功能介绍
- PHPMailer-6.6.4: PHP邮件收发类库的详细介绍
- Felineboard:为猫主人设计的交互式仪表板
- PGRFileManager:功能强大的开源Ajax文件管理器
- Pytest-Html定制测试报告与源代码封装教程
- Angular开发与部署指南:从创建到测试
- BASIC-BINARY-IPC系统:进程间通信的非阻塞接口
- LTK3D: Common Lisp中的基础3D图形实现
- Timer-Counter-Lister:官方源代码及更新发布
- Galaxia REST API:面向地球问题的解决方案
- Node.js模块:随机动物实例教程与源码解析