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包在上一步设置的目录中, 如下图


打包

--剧终--

你可能感兴趣的:(IDEA打包传统web项目为war包)