今天好好研究了一下Java的classpath,什么是classpath呢?classpath就是我们输入

java xxx

的时候Java执行环境搜索xxx类文件的路径。指定这个路径有两种方式,第一种是在我的电脑里面设置环境变量classpath或在命令行里面用

set classpath=xxxxxxx

设置,这两个方法的效果是一样的所以归类为第一种(只不过在命令行里面设置的是临时的,仅对此命令窗口有效)

第二种如下:

java -cp ./b xxx

这种方式将在当前目录的b文件夹里面找到xxx.class文件并加载进来。

第一种方法有个需要注意的地方,

set classpath=xxxxxxx

set classpath=xxxxxxx;//这行多了个分号

是不一样的,第二行多了个分号,效果就是让Java执行环境先在xxxxxx目录搜索类文件然后再从当前目录搜索类文件。而没有分号就是让Java执行环境只在xxxxxx目录搜索类文件,如果xxxxxx目录没有搜索的类文件,而当前目录有这个要搜索的类文件,那么依然会报错。

总结一下,当没有在我的电脑里面设置环境变量classpath或在命令行里面用

set classpath=xxxxxxx

设置classpath,或者是没有明确指定-cp选项的时候,Java执行环境仅从当前目录搜索类文件

当两者中有一个设置(指定)时仅从设置(指定)的目录搜索类文件,而不搜索当前目录(如果两者里面没有包含当前目录的话)

若两者同时设置和指定则忽略classpath,只使用-cp选项指定的目录,而不搜索当前目录(如果两者里面没有包含当前目录的话)

转载于:https://www.cnblogs.com/xxNote/p/4160489.html

总结一下classpath相关推荐

  1. springboot打成jar后获取classpath下的文件

    直接上代码 JAR包用这个 //获取容器资源解析器ResourcePatternResolver resolver = new PathMatchingResourcePatternResolver( ...

  2. 01-01java概述 doc命令、jdk\jre下载安装、path、classpath配置、开发中常见小问题

    1:计算机概述(了解) (1)计算机(2)计算机硬件(3)计算机软件系统软件:window,linux,mac应用软件:qq,yy,飞秋(4)软件开发(理解)软件:是由数据和指令组成的.(计算器)开发 ...

  3. path,classpath

    1.path作用. 在环境变量里面配置 win+r 打开cmd qq窗口就弹开了. 2.classpath是java里的选项. java执行java类的时候,会去看这个java类是否在classpat ...

  4. java程序通过命令行运行之Path和ClassPath的注意点

    习惯用IDE的朋友可能早就不用cmd,想当初我们刚学java的时候还记得对着黑屏幕敲的,哈哈.让我们再来重温旧梦. 我们在现在有这样一个文件HelloWorld.java,它的路径是这样的E:\jav ...

  5. (转) eclipse项目中.classpath文件详解

    背景:对于java项目中.classpath文件中的相关定义一直不是很了解,有必要进行深入的学习. 1 前言 在使用eclipse或者myeclipse进行Java项目开发的时候,每个project( ...

  6. CLASSPATH的作用

    这段话摘抄自:李刚的<疯狂Java讲义>第二版中的话P14页: 如果在JDK 的版本大于等于1.5可以完全不用设置CLASSPATH环境变量--即使不设置环境变量也可以正常运行Java程序 ...

  7. java调用项目中的文件_详解eclipse项目中.classpath文件的使用

    1 前言 在使用eclipse或者myeclipse进行java项目开发的时候,每个project(工程)下面都会有一个.classpath文件,那么这个文件究竟有什么作用? 2 作用 .classp ...

  8. path与classpath区别 path是Windows查找.exe文件的路径;classpath是jvm查找.class文件的路径

    CLASSPATH环境变量.作用是指定类搜索路径,要使用已经编写好的类,前提当然是能够找到它们了,JVM就是通过CLASSPATH来寻找类的.class文件 总而言之,path是Windows查找.e ...

  9. path classpath

    path 是一个环境变量,就像一个程序中你声明的一个变量有用户级和系统级的,可以理解为全局和局部变量变量当然是用来用的,这样系统就可以根据path=value的value来找到相应的可执行文件就像你在 ...

最新文章

  1. 24张GIF图,让你秒懂非标自动化机构的原理
  2. 本质矩阵与基本矩阵(对极几何)
  3. 代练怎么检测出来的_王者荣耀:代练熬夜打上王者,天美发来58个字,不敢收一分钱...
  4. eclipse中使用javadoc生成文档
  5. 分享个INNO打包Windows应用程序完整实例脚本(转载)
  6. LAMP 3.4 mysql常用操作-2
  7. ucore-lab1-练习5report
  8. ios fixed定位后内容不显示_记录CSS中 position:fixed 踩的坑
  9. 【其他】学习通下载任务点里的PPT三步走
  10. php漂亮按钮代码,分享一款金属感十足的按钮样式代码
  11. 跨地域为同事广播幻灯片
  12. 快进来,详解MySQL游标
  13. jQuery API .ajaxComplete()
  14. Word文档图标变成空白如何恢复
  15. python自动化运维开发入门-张子夜-专题视频课程
  16. 量化投资 -- 技术篇(6)投资组合策略性能评价(上)
  17. 未明学院:国际政治专业出身,如何pk掉港大、美籍商科生,拿下亚马逊市场部德勤offer!
  18. 安装CAJViewer时遇到注册模块出现1904错误解决方法
  19. HTML网页设计基础——用户注册界面
  20. java string转short_java类型转换

热门文章

  1. mysql 5000万条数据库_1亿条数据如何分表100张到Mysql数据库中(PHP)
  2. pdf转换为html5,PDF转换为HTML5的四种方式
  3. php400错误的请求,Wordpress中的Ajax返回400错误请求,但不确定如何进一步调试 - WordPress - srcmini...
  4. mysql query日期_如何获取mysql中两个日期之间的日期列表select query
  5. Redis6.0新版本开始引入多线程,到底改善了什么
  6. Jmeter Loadrunner高级性能测试真实曝光
  7. 北方工业大学计算机科学与技术复试分数线,北方工业大学复试分数线
  8. java tcp fin_TCP报文中的SYN,FIN,ACK,PSH,RST,URG
  9. modbus报文解析实例_万字长文!春招面试总结,鹅厂T3Android高频面试真题+解析...
  10. 检测到目标服务器启用了trace方法_CVPR2019目标检测方法进展综述