解决:如何利用IDEA将JavaWeb项目打包成war包,并发布到tomcat服务器上运行
- 一·问题描述:
- 二·解决方案:用图示举例说明
- 方案一:打包测试版本,不是存档版本(也称:稳定版本、最终版本、发布版本等等)
- 第一步:如图红圈部分,里面的红色out输出文件夹下面,只有编译文件。没有打包文件
- 第二步:打开项目结构设置,找到红圈部分,此时红圈里面什么都没有
- 第三步:打开项目结构设置,按照红圈顺序点击
- 第四步:按照红圈顺序进行
- 第五步:按照红圈顺序进行项目打war包
- 方案二:打包存档版本(也称:稳定版本、最终版本、发布版本等等)(这个war包,可以直接放到tomcat的WebApp目录下,然后浏览器正确路径访问)
- 方式一:打开项目结构设置,使用另外一种打包类型(要先将原来的打包的文件目录删掉):再按照红圈顺序进行
- 方式二:打开项目结构设置,重新添加模块工件,并设置打包类型
- 三·war包里面的具体目录结构截图:
- 1.war包解压缩之后的目录结构,如图所示:
- 2.核心WEB-INF目录结构:
- (1)classes目录里面就是Java源码全部编译之后的存放位置
- (2)lib目录就是该项目所有依赖外部jar包存放位置
- (3)web.xml文件就是整个项目应用在服务器里面的引导配置文件
- 四·总结:
一·问题描述:
1.该项目没有使用maven等管理工具,没法使用package命令,一键打包
2.IDEA中不知道如何将JavaWeb项目打包成war包
二·解决方案:用图示举例说明
方案一:打包测试版本,不是存档版本(也称:稳定版本、最终版本、发布版本等等)
第一步:如图红圈部分,里面的红色out输出文件夹下面,只有编译文件。没有打包文件
第二步:打开项目结构设置,找到红圈部分,此时红圈里面什么都没有
且此时IDEA上面的Build命令,里面的构建工件的命令也无法使用
第三步:打开项目结构设置,按照红圈顺序点击
此时会弹出一个选项框,让你选择将要打包的模块,按照红圈顺序进行
第四步:按照红圈顺序进行
弄完就如图所示,再按照红圈顺序进行
此时还是什么都没有,项目还没有被打包
第五步:按照红圈顺序进行项目打war包
结果如图所示,会多出一个artifacts文件目录,不是压缩包形态,因为IDEA已经自动解压了,方便开发人员测试使用。
方案二:打包存档版本(也称:稳定版本、最终版本、发布版本等等)(这个war包,可以直接放到tomcat的WebApp目录下,然后浏览器正确路径访问)
方式一:打开项目结构设置,使用另外一种打包类型(要先将原来的打包的文件目录删掉):再按照红圈顺序进行
按照红圈进行,构建项目war包
结果如图所示,红圈就是war包
方式二:打开项目结构设置,重新添加模块工件,并设置打包类型
按照红圈顺序进行构建war包工件
结果如图所示:war包工件打包成功
三·war包里面的具体目录结构截图:
1.war包解压缩之后的目录结构,如图所示:
注意:
(1)相当于从JavaEE项目的web层根目录开始打包。
(2)项目编译打包之后的目录层级是与你项目层级架构一致的,但也有略微不同。那就是java源码编译之后不会直接存放在web层的根目录下面,而是会放在 “WEB-INF/classes/” 目录下面,然后从java源码的根包名路径开始存放。其他的各种资源目录层级就完全一致了。
(3)静态资源可以放WEB-INF目录里面,也可以放在web层根目录下面跟WEB-INF目录平级。
2.核心WEB-INF目录结构:
(1)classes目录里面就是Java源码全部编译之后的存放位置
(2)lib目录就是该项目所有依赖外部jar包存放位置
(3)web.xml文件就是整个项目应用在服务器里面的引导配置文件
四·总结:
其实这两种打包方案,本质都是一样的,只不过一种是压缩war包格式,一种是解压缩格式。而且都可以直接放到tomcat的WebApp目录下面,通过浏览器正确路径访问。