IDEA打包传统web项目为war包

所有的设置都在project structure中:

Project中设置SDK, 没什么好说的.

Project设置

值得注意的只有jdk1.8编译Spring4.0及以上, jdk1.7编译Spring3.2.x, Springe4.x.x都可以, 如果用jdk1.8编译Spring3.2.x打包没有问题, 但是放到tomcat中运行时会报如下异常:

nested exception is org.springframework.core.NestedIOException:ASM ClassReader 
failed to parse class file- probably due to a new Java class file version that isn't 
supported yet: file [D:\WorkSpaces\luna\target\test-classes\oauthdemo\oauth2
\oauthTest.class]; 
nested exception is java.lang.IllegalArgumentException. 

Modules中点击+, 选择web项目, 然后设置三个重要的路径, 从上到下依次是web.xml的位置, web资源的目录, 和代码目录, 可能会直接读取到, 如果没有要手动设置好, 这一步很重要.

Modules设置

Libraries添加项目依赖的各种jar包, 一般是目录, 点击+选择java选择目录或文件就ok, 不赘述.

Facets设置和Modules一致

Artifacts设置了打war的一些东西, 点击+选择Web Application:Archive, 设置Name, 设置存放目录, 从Available Elements中选择需要打到war包里的文件, 我这里全打进去了, 包括WEB-INF和WebContent目录内容

Artifacts设置

接下来就是打包操作: 菜单栏Build--> Build Artifacts, 就会出现上面设置好的war包Name, action选择Build即可, war包在上一步设置的目录中, 如下图


打包

--剧终--

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容