【待解决】关于CLASSPATH的显示问题
CLASSPATH? 环境变量?
环境变量CLASSPATH是操作系统JVM的搜索路径,它可以让JVM依据这些路径找到可执行文件.class文件,就相当于环境变量PATH对操作系统windows的作用一样。
既然如此,那么我们能不能读到CLASSPATH中的那些路径?
先看看我们是怎么读到环境变量PATH的:
- 第一种方法
在cmd中输入echo %PATH%

- 第二种方法
在计算机右键属性->高级系统设置->系统属性->环境变量里查看,PATH在用户变量和系统变量里都有显示,可以双击查看具体路径(环境变量的实现是以“系统环境变量再‘附加’用户环境变量”的形式进行的)。

再试试能不能按照我们读取PATH的方法读取CLASSPATH
- 第一种方法尝试
在cmd中输入echo %CLASSPATH%
结果原样照映出%CLASSPATH%

- 第二种方法尝试
在计算机右键属性->高级系统设置->系统属性->环境变量里查看
结果:没有查找到环境变量CLASSPATH
那到底环境变量CLASSPATH存不存在呢?
- 资料上的那些蛛丝马迹
JVM预设的CLASSPATH就是读取目前文件夹中的.class,如果自行指定CLASSPATH,则以你指定的为主
这说明CLASSPATH里的内容是.(当前目录)?还是如果CLASSPATH内容为空,则默认CLASSPATH读取当前目录下的.class?
CLASSPATH环境变量。作用是指定类搜索路径,要使用已经编写好的类,前提当然是能够找到它们了,JVM就是通过CLASSPTH来寻找类的。我们需要把jdk安装目录下的lib子目录中的dt.jar和tools.jar设置到CLASSPATH中,当然,当前目录“.”也必须加入到该变量中。(网址:环境变量path和classpath的作用是什么?)
这说明了CLASSPATH里面没有内容,需得自己添加了以后才有么?
书上P34使用
javac -verbose -sourcepath src -d classes srd/main.java时,对结果截图的描述:然后搜索CLASSPATH中是否有已编译的类位码。你可以发现,其实默认搜索位码的路径包括许多默认的JAR文档,像是rt.jar等。留意最后那个“.”,由于没有指定-classpath(-cp),默认会搜索目前路径。
(而在后面指定了-cp是classes后,最后的那个“.”变为了classes)
结合截图可以说明,图2.20中CLASSPATH显示的路径只有两类,一类是JAR文档,一类是当前目录.
而后又在这一小节的提示里提示到
“JVM默认的类搜索路径,也就是JAR文档的搜索路径...(这)与类加载器有关”
而又由前面可以得知,JAR文档的搜索路径在CLASSPATH里,所以提示里的这句话是告诉我们想要查找到CLASSPATH究竟在哪可以看到内容,得先理解类加载器、JVM默认等概念么?
(问题等待解答)
当前猜测
预设的CLASSPATH里存在两类路径,一类是默认的JAR文档,一类是当前目录路径。
或许能在JVM里用某个方法把CLASSPATH里的内容显示出来。
主要疑惑
CLASSPATH在哪可以看到它的内容呢?(能明确指出它就是CLASSPATH,里面有内容,能对其进行修改)
附:发现CLASSPATH的一个特点
若用-cp指定了某个目录,则在该命令行执行过程中这个目录会暂时加到CLASSPATH里路径的最后面。如果没有指定则将当前目录(.)加到CLASSPATH路径后面(猜测是一开始CLASSPATH里就有.)
【待解决】关于CLASSPATH的显示问题的更多相关文章
- 解决ie8和ie7显示不一致
解决ie8和ie7显示不一致 当使用 Microsoft Internet Explorer 8 Beta 1 版本时,可能会遇到以下问题之一: • 网页布局不整齐 • 文本或图像重叠 • JavaS ...
- 解决 git 中文路径显示 unicode 代码的问题
解决 git 中文路径显示 unicode 代码的问题 当被修改的文件中带有中文字符时,中文字符会被转换为 unicode 代码,看不出原来的文件名. 这时,只要配置 :: git config -- ...
- 解决Linux文档显示中文乱码问题以及编码转换
解决Linux文档显示中文乱码问题以及编码转换 解决Linux文档显示中文乱码问题以及编码转换 使vi支持GBK编码 由于Windows下默认编码是GBK,而linux下的默认编码是UTF-8,所以打 ...
- Atitit.dwr3 不能显示错误具体信息的解决方式,控件显示错误具体信息的解决方式 java .net php
Atitit.dwr3 不能显示错误具体信息的解决方式,控件显示错误具体信息的解决方式 java .net php 1. Keyword/subtitle 1 2. 使用dwr3的异常convert处 ...
- 利用IIS部署WEB网站以及解决CSS/JS不能显示问题
利用IIS部署WEB网站以及解决CSS/JS不能显示问题 转载声明:http://blog.sina.com.cn/s/blog_a001e5980101b4kt.html vs中正常IIS发布网站后 ...
- 解决XP系统任务管理器显示不全
我们在使用电脑的时候有的时候打开任务管理器会发现任务管理器显示不全. 当碰到这种情况怎么解决呢?任务管理器显示不全的原因又是那些呢? 这里就来为大家分享下为什么任务管理器会显示不全以及如何解决这个问题 ...
- 解决Floodlight界面无法显示问题
参考: 解决Floodlight1.2+Mininet问题及使用安装 解决Floodlight界面无法显示问题 执行以下命令启动Floodlight时: java -jar target/floodl ...
- CSS样式 解决文字过长显示省略号问题
一.CSS样式 解决文字过长显示省略号问题 1.一般样式 一般 css 样式,当宽度不够时,可能会出现换行的效果.这样的效果在某些时候肯定是不行的,可以修改 css 样式来解决这个问题. <!D ...
- arcgis api 3.x for js 解决 textSymbol 文本换行显示(附源码下载)
前言 关于本篇功能实现用到的 api 涉及类看不懂的,请参照 esri 官网的 arcgis api 3.x for js:esri 官网 api,里面详细的介绍 arcgis api 3.x 各个类 ...
- 解决Chrome网页编码显示乱码的问题
解决Chrome网页编码显示乱码的问题 记得在没多久以前,Google Chrome上面出现编码显示问题时,可以手动来调整网页编码问题,可是好像在Chrome 55.0版以后就不再提供手动调整编码,所 ...
随机推荐
- 本地缓存和redis
项目中的传统架构在服务启动时 读取数据库的大部分数据到本地内存,在看到redis的作用时发出疑问,到底有什么样的区别以及怎么选择呢,下面是别人的回答 使用本地缓存快还是使用redis缓存好? Redi ...
- jq实现 元素显示后 点击页面的任何位置除元素本身外 隐藏元素
$(".share-weixin").on("click",function(e){ var $wx=$(".weixin-share"), ...
- hctf2018wp复现
1.bottle 登陆网站后存在提交url的地方 测试发生存在如下paload,知识点:1.crlf 2.写一个网站开发的端口小于80,浏览器就不会跳转能执行js(payload只能在火狐浏览器执行) ...
- vector详讲(三)实例
移动语义: push语句有时候会通过移动语义来提高性能 #include <iostream> #include <vector> class Element { public ...
- 利用n 升级工具升级Node.js版本及在mac环境下的坑
一.利用n 升级Node.js 最近在用NPM安装一个nodejs工具时发现,我的nodejs的版本有些旧了.这不是大问题,只要升级就可以了,当然,重新从nodejs.org最新版本是一种方法,但我想 ...
- 移动端h5列表页上拉加载更多
背景 上星期公司要求做一个回收书籍的h5给安卓用,里面有一个功能是回收记录列表.设计师那边出的稿子是没有要求分页或者是上拉刷新的,但是众所周知,列表页数据很多的情况下,h5加载是很慢的.所以我一开始是 ...
- maven加速镜像
<mirror> <id>repo3</id> <mirrorOf>central</mirrorOf> <name>Human ...
- Python cx_oracle自动化操作oracle数据库增删改查封装,优化返回查询数据
# coding=utf-8 import cx_Oracle import os import json os.environ['NLS_LANG'] = 'SIMPLIFIED CHINESE_C ...
- 在VSCode使用Markdown绘制UML图
在VSCode使用Markdown绘制UML图 需要插件 Markdown All in One Markdown Preview Enhanced PlantUML markdownlint Mar ...
- 一次tomcat的调优记录
项目本身需要上传模型,使用的是springboot1.5.3. 上传的模型比较大,下载的过程中就出现了问题(下载是su调用的java接口,其开发并非本人负责,不可更改) 问题在于,下载的时候tomca ...