idea中的modules、facets、artificats的作用

1.1 Modules

1.首先是 Modules,显示的是该工程的模块结构,有sources,paths,dependencies组成

1.2 Factes

2.Facets:它的作用就是配置项目框架类支持。表述了在Module中使用的各种各样的框架、技术和语言。这些Facets让Intellij IDEA知道怎么对待module内容,并保证与相应的框架和语言保持一致。
比如我们现在要开发的是一个 web 项目,那就需要 web 相关的 Facet,事实上,如果没有这个配置支持,编译器也不知道这个项目是个 web 项目,也就不会去读取 web.xml 的配置,更无法被 tomcat 这种容器支持。
Facet 是和 Module 紧密结合的,你如果是在 Module 里配置了,那么 Facet 里边也会出现,而如果你先在 Facet 里配置,它会要求你选择 Module,所以结果是一致的。

1.3 Artifacts

3.Artifacts是maven中的一个概念,表示某个module要如何打包,例如war exploded、war、jar、ear等等这种打包形式;
Artifacts,它的作用是整合编译后的 java 文件,资源文件等,有不同的整合方式,比如war、jar、war exploded 等,
对于 Module 而言,有了 Artifact 就可以部署到 web 容器中了。其中 war 和 war exploded 区别就是后者不压缩,开发时选后者便于看到修改文件后的效果。

1.4 各个模块的输出目录

1.Project 选项里有一个 Project compilerc output 目录,这个是整个 Project 的编译输出目录;

2.Modules 的具体单个 Module 的 Path 选项里有个 Compiler output,可以选择继承 Project 或者自定义输出目录, project和modules是一种总体和个体配置的关系。

 

3.Artifacts 也有一个 Output Directory:而 Artifacts 里的输出目录是跟容器有关系的,在容器运行的时候, 

1.会把前两者中起作用的那个(个体配置优先)的 classes 文件复制到 Artifacts 配置的目录的 WEB-INF下边,
2.然后把 Module 的 Facet 里的资源文件目录复制到 Artifacts 目录里,
3.再就是复制 lib 下的 jar 包到 WEB-INF 下,之后项目就可以启动了。

3种东西,如下图所示:

参考网址:https://www.cnblogs.com/cmyBlog/p/10892713.html 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值