IntelliJ的官网帮助中心:http://www.jetbrains.com/idea/webhelp/getting-help.html
project和module:
1、通过 .idea 下的modules.xml文件进行modules的管理,定义了module对应的iml文件,定义了iml文件的filepath和fileurl,通过iml文件加载module,如果修改了iml文件的filepath和fileurl,则定位不到iml,无法正确加载module。
当创建project时,其实也就默认创建了一个parent module,一个project下可以包含多个module(childmodule),childmodule会在下一级的目录中创建。
PhildeMacBook-Pro:IdeaProjects Phil$ ls
JavaWeb TestProject firstAngularJS weixin
PhildeMacBook-Pro:IdeaProjects Phil$ cd TestProject/
PhildeMacBook-Pro:TestProject Phil$ ls
ChildModule TestProject.iml out src web
.idea:一般是project的配置文件和配置信息,指定了artifact的位置,指定了项目中包含的modules(modules.xml文件);
out:则是打包成war的发布包artifact;war下面,一般包含一个index.jsp文件,WEB-INF目录,WEB-INF目录下包含web.xml配置文件、classes(编译成.class的java类)和lib文件夹(其它依赖的jar包等);
src:是project的原始文件,一般项目的java文件等都需要放在此目录下,可以在src目录中创建package,放各种java class类;
web:相当于webroot目录,是根据src生成.class二进制文件,是web application的主目录,包括index.jsp,WEB-INF目录,WEB-INF目录下包含web.xml配置文件、classes(编译成.class的二进制文件)和lib文件夹(其它依赖的jar包等);项目所需要的资源,比如jsp页面,image等,都可以放在web目录下。
.iml文件,module的对应文件;
External Libraries:主要包括tomcat和jdk的引用jar文件;
编译发布的一般过程为:
1、make:将java文件编译(compile)成.class二进制文件;
2、build成artifact:将class文件build成war包;
3、deploy:部署,选择artifact部署发布到tomcat服务器中。
可以向一个project中添加多个子modules,这些module可以也是web application,可以同时进行make,bulid,同时deploy到tomcat中,只需要注意在tomcat中的相对位置区分开即可。如下所示:
tomcat可以通过相同的IP、端口,同时发布不同的web应用,效果如下: