idea 使用部分心得

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路径等等。html

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

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

 

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

 

  接下来再看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等。spa

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

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

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

相关文章
相关标签/搜索