>>分享Java编程技术,对《Java面向对象编程》等书籍提供技术支持 书籍支持  卫琴直播  品书摘要  在线测试  资源下载  联系我们
发表一个新主题 开启一个新投票 回复文章 您是本文章第 25056 个阅读者 刷新本主题
 * 贴子主题:  请问设置classpath的方式有哪些区别? 回复文章 点赞(0)  收藏  
作者:Java菜鸟    发表时间:2017-06-25 11:29:47     消息  查看  搜索  好友  邮件  复制  引用

在运行程序时,常常会遇到ClassNotFound的异常。好像设置classpath有好多种方式,它们有什么区别呢?自己觉得有点混乱,请指教。


程序猿的技术大观园:www.javathinker.net
  Java面向对象编程-->异常处理
  JavaWeb开发-->Servlet技术详解(Ⅰ)
  JSP与Hibernate开发-->Spring、JPA与Hibernate的整合
  Java网络编程-->通过JDBC API访问数据库
  精通Spring-->Vue组件开发高级技术
  Vue3开发-->绑定表单
  利用堆栈将中缀表达式转换成后缀表达式
  10道Java编程基础练习题
  套接字通信:select、poll、epoll的区别
  Java设计模式: 单一职责原则和依赖倒置原则详解
  好消息:《精通JPA与Hibernate:Java对象持久化技术详解》出...
  18 张图弄懂面试官必问的一致性哈希
  Eclipse的安装配置
  超详细的Java运算符修炼手册(优秀程序员不得不知道的运算技...
  Socket服务器的整体架构
  Java入门实用代码:List 循环移动元素
  Java入门实用代码:集合转数组
  Java 入门实用代码:汉诺塔算法
  通过java.net.URL类连接HTTP服务器时获取响应结果的头部信息
  史上最全正则表达式合集(马上收藏)
  Java程序代码优化技巧
  更多...
 IPIP: 已设置保密
楼主      
该用户目前不在线 sunweiqin 
  

威望: 0
级别: 高级天王 [荣誉]
魅力: 680
经验: 680
现金: 1528
发文章数: 191
注册时间: 2016-09-12
 消息  查看  搜索  好友  邮件  复制  引用


设置classpath主要有三种方式:
(1)在操作系统中设置系统环境变量classpath。这是全局范围内的环境变量,对所有运行中的Java程序可见。
(2)在一个DOS命令窗口中定义当前环境变量classpath,例如:
C:\> set classpath=C:\classes2

这是局部的环境变量,仅仅对当前DOS窗口中运行的Java程序可见。

(3)在java命令或javac命令中通过-classpath选项来设置classpath,例如:
C:\>java –classpath  C:\classes3; C:\lib\mytools.jar   SomeClass

以上classpath选项仅仅对当前运行的Java程序可见。

Java虚拟机或Java编译器确定classpath的流程如下。

(1)如果在java命令或javac命令中设置了-classpath选项,就使用这个classpath。
(2)否则,如果在当前DOS命令窗口中定义了当前环境变量classpath,就使用这个classpath。
(3)否则,如果在操作系统中定义了系统环境变量classpath,就使用这个classpath。
(4)否则,就把当前路径作为classpath。

由此可见, 当前环境变量classpath会覆盖系统环境变量classpath,java命令或javac命令中的-classpath选项会覆盖环境变量classpath。
发文章时间 2017-06-25 11:43:06
 IPIP: 已设置保密 1 楼     
1页 1条记录 当前第1
发表一个新主题 开启一个新投票 回复文章


中文版权所有: JavaThinker技术网站 Copyright 2016-2026 沪ICP备16029593号-2
荟萃Java程序员智慧的结晶,分享交流Java前沿技术。  联系我们
如有技术文章涉及侵权,请与本站管理员联系。