借助 Maven 来构建 War 包我们就不说了,因为 Maven 都自动地将这些事都做了,只需点击 Phase-Package 即可。
本文主要说一下通过 .iml 工程文件,针对某一 Module,如何构建 War(Web Application Archive) 包。
💡首先右键 Module 选择 “Open Module Settings”,然后点击 Facets,选择 “Add”,可见下图。
![](https://img.haomeiwen.com/i8368468/611e401a5a049789.png)
💡我们以构建 JavaEE Web Application 为例。选择 “Web”,会提示⚠️ “Web facet will be added to the selected module”,表示会将 Web 框架模块加入到指定的 module 中。需要配置 Web 框架模块的如下信息。
![](https://img.haomeiwen.com/i8368468/a5e9c6618c4b7f6c.png)
💡其中 Source Roots 就是编写 Java 源代码的地址;Deployment Descriptors 是 web.xml 文件的地址;Web Resource Directories 是 webapp 的地址。如果不修改,即不与已有目录进行绑定,那么会默认在指定 Module 目录下创建一个 Web 模块目录,如下图所示。然后选择 “Create Artifacts”。
![](https://img.haomeiwen.com/i8368468/55ac3cdff52349dd.png)
💡然后选择 “Artifacts”,会看见创建的 Artifacts,可以自行编辑其信息,例如 Name、Type、Output directory、output layout 等。
💡设置 Type 为 Web Application: Archive,也可更改 Output directory。
💡如下图所示,可编辑 Output Layout 信息。默认是有个 WEB-INF/classes 目录,用来存储 java 源代码编译好的 class 文件的;
➕ 号为“Add Copy of”,可添加内容,意为会将增加的内容复制到最终的 War 包中。
例如可以增加一个 Directory Content 目录,最终会将该目录下内容都复制到 War 包中,如果目录结构和 WEB-INF 不一样则放在同级目录下;如果结构一样,则若遇重名文件会覆盖文件内容。
![](https://img.haomeiwen.com/i8368468/4c4c081d74ca0d20.png)
💡配置好后,点击菜单栏 Build,选择 Build Artifacts,选择相应的 Artifacts 点击 Build 执行即可。
网友评论