前言
在工作中遇到了基于maven或者非maven的web项目,需要打成war包,maven项目如果是按照标准结构创建的,能自动识别创建Artifact打包结构,非maven不行;但是手动打包,适用于所有的web项目!
1.打开配置窗口
选中项目 右键点击Open Module Settings/右键点击File选择Project Structure选项/快捷键Shift+Ctrl+Alt+S
2.配置Modules
一般导入项目后,项目自动识别Module;如果没有识别,手动添加
3.配置Artifacts
配置包结构,最终打成的包的形式分为1和2,1表示打包后是可运行包的文件夹,2表示的是压缩包形式(.war);
包的结构构成:WEB-INF/classes,WEB-INF/lib(这个在非maven工程中受用),根路径web路径,最终效果如下:
说明:
classes下面是步骤2中的配置的Module,通过上图第二个红色框的+添加进来
WebRoot是我自己项目中的web代码文件存放的文件夹, 'WebRoot' directory contents相当于配置前端代码的路径,跟上图中WEB-INF属于同级目录.也是通过上图第二个红色框的+添加进来的
WEB-INF/classes,WEB-INF/lib文件夹,是通过上图第一个红色框的+添加进来的
4.打包
工具栏Build选择 Build Artifacts进行打包,打包完成后会在Artifacts配置里指定的Output directory路径下生成war文件