且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

IDEA 使用tomcat部署maven版本的spring+springmvc项目

更新时间:2022-08-14 12:47:41

写在前面: 

        仅此记录自己看公司源码框架的心得,让自己保持着学习的动力。


第一节    IDEA   使用tomcat部署maven版本的spring+springmvc项目


1.工具介绍

       对于tomcat先将其简单的理解成能将war包解析,并运行其中java web项目代码的容器。
       对于maven,则是一个依赖版本管理工具和项目打包工具。
        IDEA? 。。。。

2.项目结构及部署流程

2.1  idea下项目的结构,

    (1)先创一个empty project 然后new多个Module.                                                                                                                 (
IDEA   使用tomcat部署maven版本的spring+springmvc项目
     (2)然后我们看到项目大概就是这个样子的 
IDEA   使用tomcat部署maven版本的spring+springmvc项目

      3)一眼就看出来springmvc-test是我们将要部署的web项目,其中web.xml和资源路径得看仔细哟。

IDEA   使用tomcat部署maven版本的spring+springmvc项目

2.2  添加web原型(facets?)

        (4)图3springmvc-test下的web而是在facets中创建的,点击中间的+号,选择web,然后选择springmvc-test项目,配好右侧web.xml和web资源文件即可属性。                                                                                                                                            
IDEA   使用tomcat部署maven版本的spring+springmvc项目
        (5)最后在Artifacts中点击+号,选择web application,再选择from module,   选择springmvc-test即可。
IDEA   使用tomcat部署maven版本的spring+springmvc项目

      (6) 在edit Configuration中添加tomcat,并在deployment中点击+号, 添加之前配置的artifact。
IDEA   使用tomcat部署maven版本的spring+springmvc项目

  2.3  注意事项                                 

         1.一般新导入的项目都没有web facets,因此必须在Facets中为项目添加一个web(如图3).idea和eclipse中web项目结构上有差异,因此要注意web.xml和web资源文件的位置是否配对。
         2.若出现问题则遵循Facets-->Artifacts-->Deployment的顺序重新配置。

3.点击运行时出现的莫名奇妙的bug

        1.空部署,即tomcat跑起来 了,也没报错。   极大可能是在配置Facets的descriptors时把web.xml文件替换成空文件了,真实遇见过。
        2.tomcat没跑起来,也看不见错误日志,war包下面的lib里不包含子模块的jar包,查看tomcat日志,显示找不到子模块下的Class文件。

4.有效解决办法

       1.首先在各个模块中pom文件配置好<pakeage>    <build>等属性,按顺序配置好Facets-->Artifacts-->Deployment,遵循前面修改了,后面删除再添加,特别是修改了outpath属性时,经常出现莫名其妙的bug。
       2. 查看tomcat日志,查看war里是否缺少文件,jar包等。