eclipse与intellij idea中的classpath分析
来源:互联网 发布:java 用模板导出excel 编辑:程序博客网 时间:2024/06/11 17:39
(转载)http://blog.csdn.net/skyebefreeman/article/details/56495637
初学Spring框架的时候,对eclipse和intellij idea中的classpath的定义不是很理解,每次都是懵懵懂懂地使用,这里将进行一次细致的讨论。
1. 什么是classpath?
classpath相当于Java执行环境,它指定了一些常用的包或jar的位置,方便我们对项目文件的使用,而不必重复多次写所需要文件的位置。
在classpath中可能需要使用所有相同名字的资源文件,如果用classpath:只会加载第一个,而使用classpath*:前缀则能够加载所有符合类型的文件。然而,使用classpath*:需要遍历所有的classpath,加载速度很慢,因此您应该尽量避免使用classpath*。
2.eclipse中的classpath分析
在eclipse下的Spring项目中,有一个.classpath文件,里面配置了整个项目的运行环境(如下图所示)。
代码解释:(转载于http://mingyundezuoan.iteye.com/blog/2224973)
kind:
src:源文件的具体位置,对应java build path操作中source中的一项路径。
con:运行的系统环境。
lib:库文件或目录, path为库文件或目录位置。注意: 当指定库文件时(非库目录, 通常是jar包), 应当包 含文件名。
output:指明为默认class输出路径, path为相应输出路径。注意: 这一条在文件中有且只能有一条。
var:指定工程所用到的库文件或目录, 对应工程属性Java build path中Libraries项中的一项,指明带有全 局编译路径中设置的变量(Window->Prefrences->Java->Build Path->Classpath Variables),path为 这个变量目录下的库文件。
path:源文件路径。
output:为这条路径中源文件编译以后class文件的输出路径,对应java build path操作中source选项面板下方 default output path ,所指代的路径。
including:额外包含其他目录下的所有java文件。
excluding:不包含的文件。
3.intellij idea的classpath分析
首先在打开的项目窗口打开File->Project Structure...,得到如下图所示的项目结构:
在最上面一栏可以看到这里是Source标签中的详细信息,在右边可以看到项目里面目录的类型,有Source Folders、Resource Folders等等,这里指的是Source Folders表示的都是代码源文件目录,生成的class文件会输出到target->classess文件夹中,但是里面的源文件不会复制到target->classes文件夹中,Test Source Folders表示的都是测试代码源文件目录,生成的class文件同样会输出到target->classess文件夹中,并且里面的源文件不会复制到target->classes文件夹中,而Recource Folders表示的都是资源文件目录,这些目录里面的文件会在代码编译运行被直接复制到target->classess文件夹中。可以这么讲,target->classes即为classpath,任何我们需要在classpath前缀中获取的资源都必须在target->classes文件夹中找到,否则将出现java.io.FileNotFoundException的错误信息。
如果您在项目中想添加一些自己的目录到Source Folders、Resource Folders这样的目录分类里来实现编译过后正确地文件输出,则可以点击需要设置的文件夹,再在文件结构窗口上方的Make as:后面选择正确的目录类型即可。
//-------------------------------------------------------------------------------------------------------------
classpath为Java执行环境。
idea里面需要设置resource目录。
- eclipse与intellij idea中的classpath分析
- eclipse与intellij idea中的classpath分析
- IntelliJ IDEA与eclipse快捷键
- IntelliJ IDEA 快捷健与eclipse对比
- Intellij IDEA 代码格式化与eclipse共用
- eclipse与intellij idea的区别
- classpath:与classpath*:分析
- intellij IDEA与eclipse的对比以及IDEA用法介绍
- IntelliJ IDEA和Eclipse
- IntelliJ IDEA VS Eclipse
- Eclipse转Intellij IDEA
- IntelliJ Idea Eclipse
- Intellij Idea下运行Spring Boot关于provided依赖不加入classpath的bug与解决方案
- Intellij Idea下运行Spring Boot关于provided依赖不加入classpath的bug与解决方案
- Intellij Idea下运行Spring Boot关于provided依赖不加入classpath的bug与解决方案
- Eclipse 与 IntelliJ IDEA 设计上的不同
- IntelliJ IDEA 与 Eclipse 的差异之处
- Macbook Intellij idea与Eclipse远程调试Hadoop应用程序
- 不一致的内部链接和错误的页面复制
- C语言整数的二进制偶数位,奇数位和二进制序列的输出
- python3如何使用空格输入多个数字&如何使用input输入二维数组
- QQ登录和分享
- 字符编码
- eclipse与intellij idea中的classpath分析
- 基础算法学习(01)-二分查找
- app版本更新全过程ios
- 【python web】Flask+Echarts 实现动图图表
- 模板的包含、继承、重写
- leetcode 169|229. Majority Element 1|2
- linux下安装mysql可视化工具workbench
- 文因互联CEO鲍捷:做聊天机器人有哪些坑?
- linux系统产生随机数的6中方法