IntelliJ IDEA WEB项目的部署配置

1.前言

    虽然说Intellij IDEA已经用了四个多月,里面大部分功能仍是比较熟悉的,可是不少细节地方仍是搞不清楚,这几天公司另外一个小组也换成了Intellij IDEA,帮他们迁移项目的时候,由于是非maven项目,遇到了不少问题,本身又研究了一番,下面整理一下java

2.项目配置(Project Structure)

2.1 Project 

project compliler output:配置的是项目中的默认编译输出总目录web

里面英文也说明了,每一个模块能够本身设置特殊的输出目录   因此这个基本上没用spring

2.2 Modules

项目的模块,一个项目中能够有多个子项目,每一个子项目至关于一个模块tomcat

通常咱们项目只是单独的一个,因此只须要配置一个模块,咱们能够给模块添加框架服务器


根据咱们项目中的使用到东西,添加对应的框架,并在框架里面肯定一下相关的配置文件(由于不一样IDE下,项目的文件结构可能不一样 因此导入的项目咱们要注意一下配置)mvc

模块配置根目下  分为了三个标签:Sources—— Paths—— Depedencies框架


Sources标签下 主要显示项目的目录资源  那些是项目部署的时候须要的目录 有颜色提示maven

(好比绿色是测试目录 橘色是target的目录 这些部署的时候都不须要  大红色是个人项目下没有的 蓝色是真正须要部署) ide

Paths标签下 测试


能够指定项目的编译输出目录 也就是项目类 和 测试类的编译输出地址(替换掉了Project的默认输出地址)

Depedencies是项目的依赖


咱们能够点击右侧的+号  添加lib  好比tomcat的lib  默认加进来就是Provided 

(和maven的里面的jar依赖差很少)

Provided 也就是项目部署的时候是忽略的 只是再编译项目的时候进行使用

Compile 是跟随着项目部署的  Test也是不部署的

2.3 Libraries

里面能够添加项目jar包 而且能够把多个jar放在一个组里面  相似于jar包整理

这个下添加的jar 会在Depedencies中显示(反之不能够)

2.4 Facts

项目的门面,说实话,真不知道这个是干吗的,和modules差很少,主要是为了确认一下吧

2.5 Artifacts

项目的打包部署设置,这个是项目配置里面比较关键的地方


注意红框的地方

第一个是咱们须要添加项目的部署包 注意选择是exploded的war包

第二个是项目的输出目录 非maven项目这个能够设置到任何地方 

( maven项目的须要特殊注意 这个后面再说)

第三个是输出结构(output layout) 参考图中的几个文件 

(maven项目若是不使用maven的打包编译  注意图中WEB-INF下的lib要有项目部署的jar)

3.非Maven项目的建立部署

建立File——New Project——Java——Web Application

(注意New Project里面不是选择的web 而是java)

intellij中web项目 默认网页根目录是web 

项目配置可参考2中的几个地方 根据本身的需求本身修改

artifact中out directory 能够指定到任何地方 项目打包编译到指定的目录下  

在intellij中启动tomcat  都会以对应war包out directory的设置的目录为工做空间

tomcat配置请参考http://my.oschina.net/u/140593/blog/177042#OSC_h1_2 中的2-7

4.Maven项目的部署

在intellij中 maven项目仍是能够按照maven的打包编译 参考图中的几个生命周期 手动去执行


由于maven项目的约定 是项目打包编译到 target目录下  

因此咱们在2中配置都应该去遵循maven的配置约定进行修改

这样咱们的项目在文件修改或者热部署的时候  intellij的编译才能和maven项目保持一致 

(若是是在intellij中建立maven项目 那个intellij会给你配置好全部的配置  

基本不用修改 咱们能够建立一个springmvc的例子进行参考)

须要注意的地方是:

maven项目  artifact中out directory 的目录名 

必定要和pom文件中build的finalName一致

另外pom文件中 要配置<packaging>war</packaging>

好比pom中配置的项目bulid finalName叫作ROOT

那么咱们的out directory为  E:\项目积累\test1\target\ROOT 

经过maven编译以及打包项目后

在服务器的配置中,能够去掉下图红色区域的两个选项,避免每次启动时都从新编译和打包 

 

5.总结

    本文基本总结了intellij中web项目部署的问题,以及如何去配置,由于网上也没有很具体的说明,因此这些都是本身摸索出来的,有不对的地方欢迎你们指正