博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
IntelliJ IDEA 的Project structure说明
阅读量:7095 次
发布时间:2019-06-28

本文共 1307 字,大约阅读时间需要 4 分钟。

 IntelliJ IDEA 的Project structure可以在File->Project structure中打开,同时,在新建项目是IDE一般用向导的方式让你填写Project structure相关内容。在说明如何填写之前,先说说这些项都代表什么,包含Project、module、library、artficat和facet。project就是这个工程,下面有很多module。这里project和module的关系类似于Visual Studio中的解决方案和项目之间的关系,project对应于解决方案,module对应于项目(没错,就是这样,project就是顶层,不要看英文翻译)。library就是要包含的library,这个有点像VS里的程序集的概念。artifact是打包用的,这是maven里的概念,就是这个资源包含了哪些内容,当用package时,生成相应的jar或war,用instal(maven里用于发布资源)时,这个包会连同其它必要的文件(如.pom文件),最后放在repository(maven的仓库)中。facet是为了确认信息,比如源码在哪里放、相关资源(图形等)在哪里放、java web程序的root路径等等。

  因为其它两个都比较简单,故略去,这里主要来看module和artifact。

  首先来看module,如下图所示,sources就是说这个module里有什么内容。右边是根节点,一般就是这个module的名字,根节点下有一些预览,说明了不同性质的内容放在哪里。左边显示的是在右边选中内容的预览。

 

  Dependency就是管理这个module的依赖项,依赖项可能是library包,也可能是其它的mocule。这里有个export选项,这个选项被选上了话,那么说明:将来某一个module依赖本module的话,那么被选中这个选项的项也会出现在那个module中。也就是说,有一个传递性。

 

  接下来再看artifact。artifact就是对应的一个maven的artifact,通常是一个java包。而如下如红色框1所示的是这个artifact的具体内容,你希望最终发布什么内容,就是在这设置的。内容的指定形式可以多样化,比如图中的1.1红框,它就是指得是52n-ses-core这个module的编译输出目录的内容(也就是说源码编译后的所有字节码),也就是后面一张图显示的;1.2红框指得是52n-ses-core这个module的Facet的内容(facet就是上面的facet设置的内容)。这些内容可以通过拖动的方式直接在红框右边的Available Elements列表中添加,这些内容可能是library或者是"xxx"complie output等。

52n-ses-core这个module的编译输出目录:

52n-ses-1.2.2这个artifact打包后的war:

“52n-ses-core”complie output输出的内容,对照上图可以看到这些内容最后都被打包到了war的WEB-INF/classes下。

转载地址:http://kaxql.baihongyu.com/

你可能感兴趣的文章
Twitter 宣布抛弃 Mesos,全面转向Kubernetes
查看>>
30 岁转行做Python开发晚吗?而且是零基础
查看>>
zabbix主动模式和被动模式-添加监控主机-添加自定义模板- 处理图形中的乱码-自动发现...
查看>>
Qt之QPainter的坐标变换:QTransform
查看>>
关于vue的生命周期
查看>>
【更新】Essential Studio for ASP.NET MVC更新至2018 v4(四)
查看>>
Java基础知识
查看>>
Solr搜索引擎 — SolrCloud安装和集群配置
查看>>
debian 6 上安装 fcitx-4.x
查看>>
DualPivotQuicksort
查看>>
linux Centos 6.5 安装桌面环境GNOME
查看>>
OSChina 周六乱弹 ——我的闺蜜是总统
查看>>
Redux DevTools 工具 (redux-devtools是一个有趣而又高效的redux开发工具)
查看>>
Android 自定义ViewGroup 实战篇 -> 实现FlowLayout
查看>>
禁止百度流氓安装
查看>>
自定义异常笔记
查看>>
17款最佳的代码审查工具
查看>>
mysql_5.7.17 安装时无法启动,尝试很多方法最后一招搞定!!!
查看>>
Nginx 配置多站点
查看>>
Object-C代码练习【代码块】
查看>>