IntelliJ IDEA 的Project structure说明
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下。
IntelliJ IDEA 的Project structure说明的更多相关文章
- 【intellij idea】Project Structure 讲解
项目的左侧面板 项目设置->Project Project Settings -> Modules Sources面板 Paths面板 dependencies面板 Project Set ...
- 21. 【intellij idea】Project Structure 讲解
转自:.https://www.cnblogs.com/zadomn0920/p/6196962.html 项目的左侧面板 项目设置->Project Project Settings -> ...
- [Intellij] Project Structure 配置说明
IntelliJ IDEA 的Project structure可以在File->Project structure中打开,同时,在新建项目是IDE一般用向导的方式让你填写Project str ...
- IntelliJ IDEA(七) :Project Structure
Project Structure “ 项目结构”对话框允许您管理项目和IDE级别的元素,例如Modules,Facets,Libraries, Artifacts和SDK. 在大多数情况下,左边部分 ...
- intellij idea - Project Structure 项目结构详解(简单明了)
IDEA Project Structure 设置 可以点击 按钮,或者使用快捷键 Ctrl + Shift + Alt + S 打开 Project Structure .如下如所示: 项目的左 ...
- Project Structure详解
Project Structure “ 项目结构”对话框允许您管理项目和IDE级别的元素,例如Modules,Facets,Libraries, Artifacts和SDK. 在大多数情况下,左边部分 ...
- 非maven项目 idea project structure
原文链接:https://www.cnblogs.com/jajian/p/8081640.html 最近接手非maven项目,需要熟悉idea的project structure,以解决出现的环境报 ...
- 玩转IDEA项目结构Project Structure,打Jar包、模块/依赖管理全搞定
前言 你好,我是A哥(YourBatman). 如何给Module模块单独增加依赖? 如何知道哪些Module模块用了Spring框架,哪些是web工程? IDEA如何打Jar包?打War包? 熟练的 ...
- .project sturcture和Project Structure 无论是按快捷键或者是从files中打开都不显示
project sturcture和Project Structure 无论是按快捷键或者是从files中打开都不显示 event log中报:IllegalArgumentException:Mul ...
随机推荐
- 武汉科技大学ACM :1007: A+B for Input-Output Practice (VII)
Problem Description Your task is to Calculate a + b. Input The input will consist of a series of pai ...
- DBA优化SQL采用的WITH AS 用法简介
一.WITH AS简介 WITH AS的用法从oracle 9i新增的,官方文档也称之为:subquery factoring;在进行复杂的查询.统计等操作时使用with as 子句可以大大提高性能! ...
- 关于laravel框架的Auth::attempt验证失败
按照官方文档进行认证 发现不管怎么样都是失败 if (Auth::attempt(array('email' => $email, 'password' => $password), tr ...
- Linux定时任务crontab命令使用详解
1.crontab功能介绍: crontab的功能是在一定的时间间隔内定时执行一些命令. 2.crontab参数详解: 1 crontab -u //设定某个用户的cron服务,一般root用户在执行 ...
- Nginx源码研究二:NGINX的事件处理概论
NGINX作为服务端的应用程序,在客户端发出数据后,服务端在做着这样一些处理,数据先会经过网卡,网卡会和操作系统做交互,经过操作系统的协议栈处理,再和不同的应用程序交互. 在这里面涉及两个概念,一个是 ...
- Hibernate数据库对象的创建与导出
Hibernate 与数据库的关系是ORM关系,对象映射数据库. 那么如何通过对象对数据库进行各种对象的ddl与dml操作呢? 数据库对象操作的〈database-object /〉+ SchemaE ...
- Properties配置文件
package file; import java.io.FileOutputStream; import java.io.FileReader; import java.io.FileWriter; ...
- iOS开发工具——统计Crash的工具Crashlytics-备用
简介 Crashlytic 成立于2011年,是专门为移动应用开者发提供的保存和分析应用崩溃信息的工具.Crashlytics的使用者包括:支付工具Paypal, 点评应用Yelp, 照片分享应用Pa ...
- BZOJ 4407 于神之怒加强版
http://www.lydsy.com/JudgeOnline/problem.php?id=4407 题意: 给下N,M,K.求 思路: 来自:http://blog.csdn.net/ws_y ...
- Android中的四层架构,五块区域
1. Linux内核层Android系统是基于Linux 2.6内核的,这一层为Android设备的各种硬件提供了底层的驱动,如显示驱动.音频驱动.照相机驱动.蓝牙驱动.Wi-Fi驱动.电源管理等.2 ...