文档章节

IntelliJ IDEA创建Java源文件夹

GreatQing
 GreatQing
发布于 2017/04/09 01:10
字数 1026
阅读 3068
收藏 1

        周末在捣鼓SpringMVC,用IDEA创建了个maven-archetype-webapp项目以供接下来的研究学习。在配置<context:component-scan/> 的 base-package 属性时(启用对类包进行扫描),才发现在main文件夹下没有Java源文件夹,刚创建好的项目结构如下图,

于是着手创建,右键->New->Directory,输入文件夹名Java,创建完成,现在才是标准Maven项目的结构。

       创建好文件夹后就要创建Java类包了,但这时候点击右键->New,是没有创建Package(也没有Java Class)的选项的。为什么呢,其实根据IntelliJ IDEA的图标(参考IntelliJ IDEA官网文件类型图标介绍)也能判断,我们刚才创建的是一个普通的文件夹,而不是Java源文件夹。源文件夹是用来专门放 Java 类文件的地方,相对于编译出来的 class 文件而言,它就是源。它的作用是标记该目录下的文件是可编译的。如果Java 类文件没有放在该目录或是该目录的子包下,那该 Java 类则无法编译的(Java class located out of the source root)。因此,当你需要建立一个package时,它是自动建立到源文件夹下,也只能建立在这个目录之下。所以得想办法把这个普通文件夹转换成Java源文件夹。

       按快捷键Ctrl+Alt+Shift+S打开Project Structure,点击Moudles,找到刚才创建的文件夹,右键,选择Sources文件夹变成蓝色,设置完成。或者通过点击下图箭头所指的Marks as Sources来设置。当然,有些朋友可能已经看到旁边的快捷键Alt+S了,三种方法效果是一样的。

       在源文件夹里就能创建Package和Java Class了。

下面内容摘抄自极客学院的Eclipse 的 Java Web 项目环境搭建

  • Sources 一般用于标注类似 src 这种可编译目录。有时候我们不单单项目的 src 目录要可编译,还有其他一些特别的目录也要作为可编译的目录,就需要对该目录进行此标注。只有 Sources 这种可编译目录才可以新建 Java 类和包,这一点需要牢记。
  • Tests 一般用于标注可编译的单元测试目录。在规范的 maven 项目结构中,顶级目录是 src,maven 的 src 我们是不会设置为 Sources 的,而是在其子目录 main 目录下的 java 目录,我们会设置为 Sources。而单元测试的目录是 src - test - java,这里的 java 目录我们就会设置为 Tests,表示该目录是作为可编译的单元测试目录。一般这个和后面几个我们都是在 maven 项目下进行配置的,但是我这里还是会先说说。从这一点我们也可以看出 IntelliJ IDEA 对 maven 项目的支持是比较彻底的。
  • Resources 一般用于标注资源文件目录。在 maven 项目下,资源目录是单独划分出来的,其目录为:src - main -resources,这里的 resources 目录我们就会设置为 Resources,表示该目录是作为资源目录。资源目录下的文件是会被编译到输出目录下的。
  • Test Resources 一般用于标注单元测试的资源文件目录。在 maven 项目下,单元测试的资源目录是单独划分出来的,其目录为:src - test -resources,这里的 resources 目录我们就会设置为 Test Resources,表示该目录是作为单元测试的资源目录。资源目录下的文件是会被编译到输出目录下的。
  • Excluded 一般用于标注排除目录。被排除的目录不会被 IntelliJ IDEA 创建索引,相当于被 IntelliJ IDEA 废弃,该目录下的代码文件是不具备代码检查和智能提示等常规代码功能。
  • 通过上面的介绍,我们知道对于非 maven 项目我们只要会设置 src 即可。

© 著作权归作者所有

共有 人打赏支持
GreatQing
粉丝 6
博文 17
码字总数 11370
作品 0
广州
程序员
IDEA 下如何修改 Elasticsearch 源码

以下所有过程以mac操作系统下(macOS 10.13.6)为例进行。 环境准备 安装jdk10 因为es需要高版本jdk进行开发,所以我们直接安装jdk10。 前往 http://www.oracle.com/technetwork/java/javas...

寻剑
08/30
0
0
intellij idea maven 配置使用

欢迎访问我的个人博客网站:http://www.itlife.wang/ maven安装:http://my.oschina.net/henghanan/blog/202334 1、要在intellij idea使用maven,同样是先要配置maven的路径,不过intelli...

henghanan
2014/02/22
0
3
Java开发工具IntelliJ IDEA是如何导入项目的

用户使用Intellij IDEA进行项目开发,不仅可以创建全新的项目,还可以导入使用其它开发工具设置和开发的项目。 1 选择源目录 点击File → Import Project并指定导入项目所存放的磁盘位置。 ...

答应不爱你
2013/09/18
0
0
IntelliJ IDEA 13 + Genymotion 2.3 开发环境搭建

【声明】 本文来自:http://www.cnblogs.com/smyhvae/p/4013535.html 【有修改】 【正文】 【开发环境】 物理机版本:Win 7旗舰版(32位) Java SDK版本:jdk1.8.0_20(32位) Android SDK版...

Lofo
2014/10/26
0
0
Java开发工具IntelliJ IDEA使用教程:创建新的Andriod项目

IntelliJ IDEA社区版作为一个轻量级的Java开发IDE,本身是一个开箱即用的Android开发工具。 注意:在本次的教程中我们将以Android平台2.2为例进行IntelliJ IDEA的使用说明,Android 2.2虽然是...

kouxunli1
2013/09/22
0
0

没有更多内容

加载失败,请刷新页面

加载更多

理解数据库的4种隔离级别

本文转自:http://m.blog.csdn.net/article/details?id=51924963 数据库事务的隔离级别有4种,由低到高分别为Read uncommitted 、Read committed 、Repeatable read 、Serializable 。而且,...

初雪之音
31分钟前
1
0
主流的消息队列MQ比较,详解MQ的4类应用场景

目前主流的MQ 1.ZeroMQ 号称最快的消息队列系统,尤其针对大吞吐量的需求场景。 扩展性好,开发比较灵活,采用C语言实现,实际上只是一个socket库的重新封装,如果做为消息队列使用,需要开发...

游人未归
今天
4
0
React 服务器渲染原理解析与实践

网盘下载地址 React 服务器渲染原理解析与实践 本套课程,讲解了React中SSR技术的整个搭建思路及流程,完整的从原理上讲清楚了SSR的概念,重点在于讲解编写SSR框架遇到的各种知识点,以及细节...

qq__2304636824
今天
4
0
Jenkins使用

clean install -Dmaven.test.skip=true 系统设置 全局工具配置 其他的配置类似 构建项目配置

1713716445
今天
2
0
多线程

1. 多线程概念。并发和并行的概念。 多线程指的是一段时间内cpu同时执行多个线程。一个程序至少运行>=1个进程,进程就是运行中的程序,而一个进程至少运行>=1个线程,线程是操作系统能调度的...

鱼想吃肉
今天
5
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部