文档章节

IntelliJ IDEA创建Java源文件夹

GreatQing
 GreatQing
发布于 2017/04/09 01:10
字数 1026
阅读 4028
收藏 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...

寻剑
2018/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
Intellij IDEA 学习笔记

Intellij Idea常用快捷键总结 Ctrl + [ & ]——对于{}围起来的代码块,使用该快捷键可快速跳转至{}开始结尾处 Ctrl + N——查找类文件 Ctrl + Shift + N——查找文件 Ctrl + F12——显...

OSC_fly
2018/12/24
0
0
Java开发工具IntelliJ IDEA是如何导入项目的

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

答应不爱你
2013/09/18
0
0
JetBrains 的 IntelliJ IDEA 走向开源

随着开源免费社区版的最新推出,著名的 Java IDE 组合将充斥市场 布拉格2009年10月16日电 /美通社亚洲/ -- 为软件开发商提供增效型智能工具的创建商 JetBrains(R) 宣布了其获奖的 Java IDE -...

红薯
2009/10/16
2.7K
0

没有更多内容

加载失败,请刷新页面

加载更多

PHP接收前端传值各种情况整理

PHP接收前端传值各种情况整理 服务端代码: header('Access-Control-Allow-Origin:*');var_dump($_POST);exit; 情况 1) 传null $.post('http://xxxxx.xx/index.php', { "test": null}......

SSSWIIILLL
39分钟前
3
0
利用神器BTrace 追踪线上 Spring Boot应用运行时信息

概述 生产环境中的服务可能会出现各种问题,但总不能让服务下线来专门排查错误,这时候最好有一些手段来获取程序运行时信息,比如 接口方法参数/返回值、外部调用情况 以及 函数执行时间等信...

CodeSheep
今天
18
0
OSChina 周四乱弹 —— 我想过年请假提前回家两天

Osc乱弹歌单(2019)请戳(这里) 【今日歌曲】 @clouddyy :#每日一歌# 分享王力宏的单曲《爱错》 《爱错》- 王力宏 手机党少年们想听歌,请使劲儿戳(这里) @Caremorele :这几天起床有点...

小小编辑
今天
672
9
Cookie 显示用户上次访问的时间

import javax.servlet.ServletException;import javax.servlet.annotation.WebServlet;import javax.servlet.http.Cookie;import javax.servlet.http.HttpServlet;import javax.serv......

gwl_
今天
1
0
网络编程

第14天 网络编程 今日内容介绍  网络通信协议  UDP通信  TCP通信 今日学习目标  能够辨别UDP和TCP协议特点  能够说出UDP协议下两个常用类名称  能够说出TCP协议下两个常用类名称...

stars永恒
今天
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部