Project Structure

“ 项目结构”对话框允许您管理项目和IDE级别的元素,例如Modules,Facets,Libraries, Artifacts和SDK。

在大多数情况下,左边部分有两个窗格实现了两级选择器。唯一的例外是当你选择项目,在这种情况下只有一个选择器窗格。

打开方式有两种:

1. 通过工具栏

2.通过快捷键

Ctrl+Shift+Alt+S

Project

指定项目名称,SDK,语言级别和编译器输出路径。

  • Project name:项目名,使用此字段编辑项目名称。
  • Project SDK:项目SDK,选择项目SDK。如果所需SDK不在列表中,请单击“ New”,然后选择所需的SDK类型。然后,在打开的对话框中,选择SDK主目录,然后单击确定。要查看或编辑所选SDK的名称和内容,请单击"Edit"。(SDK页面将打开。)
  • Project language level:选择要支持的Java语言级别。选定的级别将被用作项目默认值。

    可用选项对应于JDK版本:
    1.3 - 普通的旧Java
    1.4 - “断言”关键字
    5.0 - 'enum'关键字,自动装箱等
    6.0 - @Override在接口
    7.0 - 钻石,ARM,多捕获等
    8.0 - Lambda支持,类型注释等
    可以为您的任何模块设置单独的语言级别 。
    请注意,如果目标级别没有明确定义(编译器选项-target),则认为它与源语言级别相同。
    因此,如果-target没有明确定义,它将与语言水平同步。

  • Project compiler output:项目编译器输出,指定IntelliJ IDEA将存储编译结果的路径。单击选择路径对话框中browseButton 的目录。 

    指定目录中的两个子目录将被创建:
    production 为生产代码。
    test 为测试来源。
    在这些子目录中,将为每个模块创建单独的输出目录。输出路径可以在模块级重新定义。

Modules

指定项目名称,SDK,语言级别和编译器输出路径。在“  Project Structure”对话框中的类别中,现有groups, modules, facets以及Flash模块的build configurations显示在元素选择器窗格中。(Facets and build configurations显示为模块元素。)

  • Name:项目名称
  • Souces:这里对Module的开发目录进行文件夹分类,就是说这个module里有什么内容,说明了不同性质的内容放在哪里。
    注意,这些不同内容的标记代表了一个标准Java工程的各项内容,IntelliJ就是根据这些标记来识别一个Java工程的各项内容的,比如,它会用javac去编译标记为Sources的源码,打包的时候会把标记为Resources的资源拷贝到jar包中,并且忽略标记为Exluded的内容。左边显示的是在选中内容的预览。
  • Paths:为模块配置编译器输出路径,还可以指定与模块关联的外部JavaDocs和外部注释的位置。
  • Dependencies:在此选项卡上,您可以定义模块SDK并形成模块依赖关系列表。

Sources

对module的开发目录进行文件夹分类,以让idea明白怎么去对待他们,明确哪些是存放源代码的文件夹,哪些是存放静态文件的文件夹,哪些是存放测试代码的文件夹,哪些是被排除编译的文件夹。

Language level:语言级别列表,使用此列表为模块选择Java语言级别。可用选项对应于JDK版本。

Sources:源代码存放的文件,蓝色。

Tests:设置测试代码存放的文件件,绿色。

Resources:一般对应着Sources文件,一般放配置文件,如:log4j.properties,application.yml。

Test Resources:这个对应着Tests文件夹,存放着Tests代码的配置文件。

Excluded:设置配出编译检查的文件,例如我们在project模块设置的out文件夹。

Paths

  • Compiler output:编译输出路径。

1. Inherit project compile output path:继承项目编译输出路径 选择此选项以使用为项目指定的路径。即上面在Project选项中设置的out文件路径。

2. Use module compile output path:使用模块编译输出路径。

Output path:编译输出路径。

Test output path:测试代码编译输出路径。

Exclude output paths: 排除输出路径,选中此复选框可以排除输出目录。

  • JavaDoc:使用可用控件组合与模块关联的外部JavaDocs存储位置的列表。
  • External Annotations:外部注释。使用 和  管理与模块关联的外部注释的位置(目录)列表。

Dependencies

在此选项卡上,您可以定义模块SDK并形成模块依赖关系列表。

  • Module SDK:模块SDK,选择模块SDK。

    (要将项目SDK与模块相关联,请选择Project SDK。请注意,如果稍后更改了项目SDK,模块SDK将相应更改。
    如果所需SDK不在列表中,请单击“ 新建”,然后选择所需的SDK类型。然后,在打开的对话框中,选择SDK主目录,然后单击确定。
    要查看或编辑所选SDK的名称和内容,请单击编辑。(SDK页面将打开。)

  • 依赖列表
  • 相关性存储格式,选择用于存储依赖关系的格式(作为IntelliJ IDEA模块或Eclipse项目)。该选项对使用不同开发工具的团队有帮助。

Libraries

在此选项卡上,您可以定义模块SDK并形成模块依赖关系列表。

首先,可以创建一个新的项目库,可以设置分类。

可以添加本地jar包,网络来源的jar包,排除jar包,删除jar包。

Facets

表示这个 module 有什么特征,比如 Web,Spring 和 Hibernate 等;

Artifacts

Artifact 是 maven 中的一个概念,表示某个 module 要如何打包,例如 war exploded、war、jar、ear 等等这种打包形式;
一个 module 有了 Artifacts 就可以部署到应用服务器中了!
在给项目配置 Artifacts 的时候有好多个 type 的选项,exploed 是什么意思?
explode 在这里你可以理解为展开,不压缩的意思。也就是 war、jar 等产出物没压缩前的目录结构。建议在开发的时候使用这种模式,便于修改了文件的效果立刻显现出来。默认情况下,IDEA 的 Modules 和 Artifacts 的 output 目录 已经设置好了,不需要更改,
打成 war 包 的时候会自动在 WEB-INF 目录 下生产 classes 目录 ,然后把编译后的文件放进去。

SDKS

系统开发工具 ,全局 SDK 配置 。

Global libraries

全局类库,可以配置一些常用的类库。

Problems

问题,在项目异常的时候很有用,可以根据提示进行项目修复(FIXED)。

Project Structure详解的更多相关文章

  1. intellij idea - Project Structure 项目结构详解(简单明了)

    IDEA Project Structure 设置 可以点击  按钮,或者使用快捷键 Ctrl + Shift + Alt + S  打开 Project Structure .如下如所示: 项目的左 ...

  2. Eclipse和MyEclipse工程描述符.classpath和.project和.mymetadata详解aaaaaa(转)

    Eclipse和MyEclipse工程描述符.classpath和.project和.mymetadata详解(转) (2012-03-28 15:06:54) 转载▼ 标签: .mymetadata ...

  3. iOS学习——iOS项目Project 和 Targets配置详解

    最近开始学习完整iOS项目的开发流程和思路,在实际的项目开发过程中,我们通常需要对项目代码和资料进行版本控制和管理,一般比较常用的SVN或者Github进行代码版本控制和项目管理.我们iOS项目的开发 ...

  4. 转:InnoDB Page Structure(InnoDB页面结构详解)

    InnoDB Page Structure(InnoDB页面结构详解) 此转载自登博的博客,给大家分享.

  5. 转:InnoDB Log Block Structure(InnoDB日志Block结构详解)

    文章转载自等博 InnoDB Log Block Structure(InnoDB日志Block结构详解)

  6. Android Studio一直显示Building“project name”Gradle project info问题详解

    关注我,每天都有优质技术文章推送,工作,学习累了的时候放松一下自己. 本篇文章同步微信公众号  欢迎大家关注我的微信公众号:「醉翁猫咪」 Android Studio一直显示 Building&quo ...

  7. Ant 之bulid.xml详解

    ANT build.xml文件详解(一) Ant的概念 可能有些读者并不连接什么是Ant以及入可使用它,但只要使用通过Linux系统得读者,应该知道 make这个命令.当编译Linux内核及一些软件的 ...

  8. 【Android 应用开发】Ubuntu 下 Android Studio 开发工具使用详解 (旧版本 | 仅作参考)

    . 基本上可以导入项目开始使用了 ... . 作者 : 万境绝尘 转载请注明出处 : http://blog.csdn.net/shulianghan/article/details/21035637 ...

  9. JNI详解---从不懂到理解

    转载:https://blog.csdn.net/hui12581/article/details/44832651 Chap1:JNI完全手册... 3 Chap2:JNI-百度百科... 11 C ...

随机推荐

  1. java_25 FileReader类和FileWriter类

    1.FileWriter 1.1FileWriter 用于写入字符流.要写入原始字节流,请考虑使用 FileOutputStream. public class Demo { public stati ...

  2. php 守护进程(Daemon)

    守护进程(daemon)是一类在后台运行的特殊进程,用于执行特定的系统任务. 很多守护进程在系统引导的时候启动,并且一直运行直到系统关闭. 守护进程一直在后台运行,脱离终端运行的程序 独立运行的守护进 ...

  3. C# 小数点后保留两位小数,四舍五入的函数及使用方法

    1 Math.Round(45.367,2) //Returns 45.37 2 Math.Round(45.365,2) //Returns 45.36 C#中的Round()不是我们中国人理解的四 ...

  4. bootstrap treeview 树形数据生成

    这个问题还是挺经典的,后台只是负责查出所有的数据,前台js来处理数据展示给treeview;show you the code below:<script> $(function () { ...

  5. python课程安排

    作为最流行的脚本语言之一,python具有内置的高级数据结构和简单面向对象编程思想实现.同时,其语法简洁而清晰,类库丰富而强大,非常适合进行快速原型开发.另外,python可以运行在多种系统平台下,从 ...

  6. vue项目中编写一个图片预览的公用组件

    今天产品提出了一个查看影像的功能需求. 在查看单据的列表中,有一列是影像字段,一开始根据单据号调用接口查看是否有图片附件,如果有则弹出一个全屏的弹出层,如果没有给出提示.而且,从列表进入详情之后,附件 ...

  7. 用DOM方式解析XML

    一.用DOM方式解析XML 此例子节点结构如下: 1.获取book节点属性 (1).如果不知道节点的属性,通过 NamedNodeMap attrs = book.getAttributes(); 来 ...

  8. spring boot 源码分析

    说明:spring boot版本 2.0.6.RELEASE 思绪 首先,大家认识spring boot是从@SpringBootApplication注解和org.springframework.b ...

  9. EmWin 字体相关函数

    学习笔记:----------------------------------------------------------- 1:const GUI_FONT * GUI_GetFont(void ...

  10. 浅谈 drop、truncate和delete的区别

    (1)DELETE语句执行删除的过程是每次从表中删除一行,并且同时将该行的删除操作作为事务记录在日志中保存以便进行进行回滚操作. TRUNCATE TABLE 则一次性地从表中删除所有的数据并不把单独 ...