zoukankan      html  css  js  c++  java
  • 基于springboot多模块项目使用maven命令打成war包放到服务器上运行的问题

    首先,大家看到这个问题,可能并不陌生,而且脑子里第一映像就是使用mava中的clear package 或者 clear install进行打包,然后在项目中的target文件夹下面找到xxx.war,将这个war包放到外置的tomcat服务器下的webapps下面,最后运行tomcat的bin文件夹下面的startup.bat命令就可以进行访问了,

    起初我也是这样跟你们一样的,也这样做了,但最后tomcat运行startup.bat命令时也正常,没有报错,但在浏览器中访问时出现404没有找到的错误,但访问tomcat主页面正常,所以第一直觉就是这个项目打成的war包出现了问题,再看看启动tomcat时打印的内容,如下图:

    再看下webapps文件夹,war包解压了,但就是没有运行项目,当时就很苦恼,然后实验了单模块的项目进行打成war包再放到tomcat运行,结果运行正常,这就更苦恼了,然后再百度+分析了下,网上建议springboot项目打成jar包运行,不建议war包运行,但可能是本人性格问题吧,觉得jar包可以,war包为啥不行,然后问了下群里大佬,才解决。

    解决方法是:

    在idea2018中,点击标题栏中的Build--》Build Artifacts,在弹框中选择build,打成war包后继续将该war包放入到tomcat中运行startup.bat命令,最后访问,完美运行成功!

    虽然运行成功了,但还是有点苦恼,然后对比了下运行后解压出来的war包,如下图:

    这是使用maven中的clear install或者clear package运行之后打成war包放到tomcat中解压出来的目录

    这是使用Build--》Build Artifacts的命令打成war包放到tomcat中解压出来的目录

    这一对比,我想大家都能够明白了吧。

    但还是感觉那里不对劲,是否有大佬方便出来给我这个小白进行讲解下这两种方式打出来的war包为什么会有这么大的区别???

  • 相关阅读:
    AcRxClass::addX
    string.format("%s",name)
    strcmp 与 _tcscmp
    acedinitget
    判断实体的类型 相关操作
    accmcolor
    CAD类型转换
    图的存储结构及遍历
    并查集(Union/Find)
    设计模式--缺醒适配器模式
  • 原文地址:https://www.cnblogs.com/mYunYu/p/10020437.html
Copyright © 2011-2022 走看看