Maven项目打包成war包部署到Tomcat的方法

 更新时间:2018年06月28日 11:53:21   作者:DavidHH  
这篇文章主要介绍了Maven项目打包成war包部署到Tomcat的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧

有关于 Maven 项目的打包部署,我这里用的是 Eclipse 编辑器,以此来做个简单的记录。

实践环境

操作系统: Windows

IDE: Eclipse

打包部署过程 

1 项目打包

1.1 右键点击所需要打包的项目,点击如图所示 Maven clean,这里 Maven 会清楚掉之前对这个项目所有的打包信息。

 

1.2 进行完 Maven clean 操作后,在eclipse的控制台会出现以下的信息。


1.3 然后我们重新右键所需打包的项目,点击如图所示 Maven build


1.4 在弹出的界面中,进行如下图的操作。

“Goals”输入框中输入 -X package,同时勾选下方 Update SnapshotsSkip Tests 选项框。

 

1.5 出现以下结果则说明打包成功。 


1.6 刷新我们的项目,我们能在项目的 target 目录下找到我们打包好的 war 包。

2 项目部署

2.1 将上述打包好的 war 包放置我们的 tomcat 的 webapps 目录下。如图所示。


2.2 修改 tomcat 中 conf 目录下的配置文件 server.xml,在配置文件中找到Host标签,在其中添加如下内容。这里使用的是相对路径,doBase 属性的值是我们所打 war 包的名称(至于为什么要增加这一步,后面会做解释)。 

复制代码 代码如下:
<Context docBase="analysis-tool-web-1.0-SNAPSHOT" path="/" reloadable="true" privileged="true"/>
 


2.3 进入 tomcat 的 bin 目录,点击 startup.bat 启动我们的tomcat。显示如下结果则说明部署成功。  


2.4 这时候我们打开浏览器输入 localhost:8080,就成功访问到了我们的主页。

说明

上述说到,在我们 tomcat 中的 conf 目录中的 server.xml 配置文件中添加以下内容。

复制代码 代码如下:
<Context docBase="analysis-tool-web-1.0-SNAPSHOT" path="/" reloadable="true" privileged="true"/>

我们先把原先的内容注释掉,重启来看下会出现什么问题。 


注释掉后,重启我们的tomcat,然后在浏览器中访问 localhost:8080

  

你会发现这个时候是请求不到我们的项目的。这种情况下在访问路径中加上我们的项目名称再试下,访问 http://localhost:8080/analysis-tool-web-1.0-SNAPSHOT/login(项目的所有资源、请求都在 analysis-tool-web-1.0-SNAPSHOT 目录下)。

  

到这一步基本跟之前一样是没什么问题的。问题就在我们点击登录以后,后面的请求路径的变化。我尝试进行登录,看登录后的跳转路径。


这里缺省了我们的项目路径 /analysis-tool-web-1.0-SNAPSHOT,而当前项目资源、请求都在 analysis-tool-web-1.0-SNAPSHOT 文件夹下。请求直接跳转至 / 下,导致找不到资源的请求报404错误。在 server.xml 中配置以上内容主要是为了为访问项目设置资源的相对路径。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • Java正则表达式之全量匹配和部分匹配

    Java正则表达式之全量匹配和部分匹配

    正则表达式异常强大,一直理解不深,用的也不深,这次项目中尝试,体会到了它的强大之处,这篇文章主要给大家介绍了关于Java正则表达式之全量匹配和部分匹配的相关资料,需要的朋友可以参考下
    2023-06-06
  • druid连接池的参数配置示例全面解析

    druid连接池的参数配置示例全面解析

    这篇文章主要为大家介绍了druid连接池的参数配置示例全面解析,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-09-09
  • Java 继承与多态超详细梳理

    Java 继承与多态超详细梳理

    继承就是可以直接使用前辈的属性和方法。自然界如果没有继承,那一切都是处于混沌状态。多态是同一个行为具有多个不同表现形式或形态的能力。多态就是同一个接口,使用不同的实例而执行不同操作
    2022-04-04
  • Java读取文件及基于正则表达式的获取电话号码功能详解

    Java读取文件及基于正则表达式的获取电话号码功能详解

    这篇文章主要介绍了Java读取文件及基于正则表达式的获取电话号码功能,结合实例形式详细分析了正则匹配操作的相关语法及电话号码匹配的原理与实现技巧,需要的朋友可以参考下
    2017-09-09
  • Java实现断点续传功能的示例代码

    Java实现断点续传功能的示例代码

    这篇文章主要为大家详细介绍了如何利用Java语言实现网络资源的断点续传功能,文中的示例代码讲解详细,具有一定的学习价值,感兴趣的可以了解一下
    2022-10-10
  • Java中内存问题之OOM详解

    Java中内存问题之OOM详解

    这篇文章主要介绍了Java中内存管理的OOM详解,OOM,全称“Out Of Memory”,翻译成中文就是“内存用完了”,来源于java.lang.OutOfMemoryError,当JVM因为没有足够的内存来为对象分配空间并且垃圾回收器也已经没有空间可回收时,就会抛出这个error,需要的朋友可以参考下
    2023-08-08
  • Java8实现任意参数的链栈

    Java8实现任意参数的链栈

    这篇文章主要为大家详细介绍了Java8实现任意参数的链栈,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-10-10
  • 解决从Map、JSONObject取不存在键值对时的异常情况

    解决从Map、JSONObject取不存在键值对时的异常情况

    这篇文章主要介绍了解决从Map、JSONObject取不存在键值对时的异常情况,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-07-07
  • Java关键字之native详解

    Java关键字之native详解

    这篇文章主要为大家介绍了Java关键字之native,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能够给你带来帮助
    2022-01-01
  • Spring Boot 中 controller层注解常用方法详解

    Spring Boot 中 controller层注解常用方法详解

    在 Spring Boot 中,@RestController 是一个用于处理 RESTful 风格请求的组合注解,它结合了 @Controller 和 @ResponseBody,使得返回的对象直接转换成 JSON 或 XML 格式,无需视图解析,本文重点介绍Spring Boot 中 controller层注解常用方法,感兴趣的朋友一起看看吧
    2025-10-10

最新评论