谁有无心法师第二季无心法师全集百度云盘,免费的

Java环境变量配置&解决版本不一致问题 - 小白奕啊奕 - 推酷
Java环境变量配置&解决版本不一致问题 - 小白奕啊奕
之前用Myeclipse编译运行Java没有问题
但是突然想用简单点的NotePad++以及cmd直接编译运行Java
这就让我倒腾了一晚上
先说下问题的解决,再总结下查阅的一些知识。
1.进行win8下Java环境变量配置,在&系统变量&下进行如下配置:
(1)新建-&变量名:JAVA_HOME变量值:C:\Program Files\Java\jdk1.8.0_05(这只是我的JDK安装路径)
(2)编辑-&变量名:Path在变量值的后面加上:;%JAVA_HOME%\jre\%JAVA_HOME%\
(3)新建-&变量名:CLASSPATH变量值:.;%JAVA_HOME%\%JAVA_HOME%\lib\tools.%JAVA_HOME%\lib\dt.jar(注意最前面有个&.&)
2.测试下环境变量是否设置成功:按“WIN”键+R”键,分别输入java,javac,java -version 命令
问题1:‘javac’不是内部命令或外部命令,也不是可运行的程序或批处理。
解决:ClASSPATH中,当前目录“.”也必须加入到该变量中。&classpath&,该变量的含义为java加载类(bin or lib)的路径,要使用已经编写好的类,前提当然是能够找到它们了,JVM就是通过CLASSPTH来寻找类的,因此不能忘了&.&。
注:如果将环境变量修改好了之后,仍出现上述问题,那么可能是cmd更新不一致的问题,在别处看到关闭Cmd窗口,重新打开就好了,但是我是再重启一次电脑之后才好~~
问题2:解决了问题1之后,对与HelloWord.java 输入javac HelloWorld之后出现&UnsupportedClassVersionError&错误:
HelloWorld Exception in thread &main& java.lang.UnsupportedClassVersionError:
&HelloWorld : Unsupported major .minor version 52.0 & & & &&
at java.lang.ClassLoader.defineClass1(Native Method) & & & &
at java.lang.ClassLoader.defineClass(Unknown Source) & & & &&
at java.security.SecureClassLoader.defineClass(Unknown Source) & & & &
这个很明显是一个版本不支持的问题,经过搜索发现问题所在:
出现java.lang.UnsupportedClassVersionError 错误的原因,是因为我们使用高版本的JDK编译的Java class文件试图在较低版本的JVM上运行,所报的错误。
因为,高版本的JDK生成的class文件使用的格式,可能与低版本的JDK的.class文件格式不同。这样,低版本的JVM无法解释执行这个.class文件,会抛出java.lang.UnsupportedClassVersionError不支持的Class版本错误。
分别输入java -version 和javac -version
果然,java版本是1.7而javac版本是1.8(o(╯□╰)o但是我的JDK明明是1.8的哇~~~~)
后面的搜索问题变成了,如何解决版本不一致问题:
在注册表中修改:HKEY_LOCAL_MACHINE/SOFTWARE/JavaSoft/Java Runtime Environment 改为1.8
再次运行java -version
给跪了哇~~~至此终于搞定~~~~
有些原理的问题暂且还不懂&
待以后开发~~~~!!!
总结几个知识点吧~~
JDK、JRE有什么区别:
Jre & 是java & runtime & environment的缩写, & 是java程序的运行环境。既然是运行,当然要包含jvm,也就是大家熟悉的虚拟机啦, 还有所有java类库的class文件,都在lib目录下打包成了jar。大家可以自己验证。至于在windows上的虚拟机是哪个文件呢? &Java\jdk\ jre\bin\client里面是不是有一个jvm.dll呢?那就是虚拟机。
Jdk & 是java & development & kit,是java的开发工具包,里面包含了各种类库和工具。当然也包括了另外一个Jre--------Java\jre. &那么为什么要包括另外一个Jre呢?而且jdk\jre\bin同时有client和server两个文件夹下都包含一个jvm.dll。 & 说明是有两个虚拟机的。
Java\jdk\bin这个bin下有各种java程序需要用到的命令,与Java\jdk\jre\bin或者Java\jre\bin的bin目录最明显的区别就是Java\jdk\bin下才有javac.exe,这一点很好理解,因为 jre只是一个运行环境而已。与开发无关,正因为如此,具备开发功能的jdk自己的jre下才会同时有client性质的jvm和server性质的 jvm, 而仅仅作为运行环境的jre下只需要client性质的jvm.dll就够了。
我们用的java命令并不是 Java\jdk\bin目录下的而是Java\jdk\jre\bin目录下的。不信可以做一个实验,大家可以把Java\jdk\bin目录下的java.exe剪切到别的地方再运行 java程序,发现了什么?一切OK!
如果java为了提供给大多数人使用,他们是不需要jdk做开发的,只需要jre能让java程序跑起来就可以了,那么每个客户还需要手动去设置环境变量多麻烦啊?
所以安装jre的时候安装程序自动帮你把jre的java.exe添加到了系统变量中,因此去C:\Windows\system32下面去看看吧,发现有一个java.exe。
已发表评论数()
请填写推刊名
描述不能大于100个字符!
权限设置: 公开
仅自己可见
正文不准确
标题不准确
排版有问题
主题不准确
没有分页内容
图片无法显示
视频无法显示
与原文不一致为什么cmd中输入Java正常,但是输入javac就说不是内部或外部的可执行文件
非常感谢!
写下你的评论...
Copyright (C)
All Rights Reserved | 京ICP备 号-215795人阅读
javase(1)
昨天重装了win10系统,发现以前配好的java环境变量和tomcat环境变量全都清空了,在重新配置的时候总是出现问题,即在cmd命令窗口下,输入java,显示正常,输入java -version 也是显示正常,唯独输入javac,显示“javac不是内部或外部命令,布拉布拉一些的问题”,然后我就开始各种百度各种谷歌,终于在大半夜把这个问题搞定了。。。
下面来说说这个问题的解决办法,其实很简单:
* 1,首先进入环境变量页面
2,在系统变量下面配置
JAVA_HOME:你自己的jdk的路径
CLASSPATH= .;%JAVA_HOME%\lib\dt.%JAVA_HOME%\lib\tools.jar
注意前面有一个.千万不要忘了。
第三步,也是最重要的一步,配置Path变量,这里win10和其他的不同就出来了,win的path变量,要用jdk的绝对路径,而不能用%JAVA_HOME%这一类的,计算机识别不了。
C:\ProgramFiles\Java\jdk1.7.0_67\C:\Program Files\Java\jdk1.7.0_67\bin\jre\
在path环境变量的最前端加上你自己的jdk的这两个目录就好了。一定要是绝对路径!
这样你在测试一下肯定就没有问题了,还有修改完环境变量,再次测试的时候,cmd的窗口需要重新启动一下。
参考知识库
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:19968次
排名:千里之外
原创:10篇
评论:22条
(3)(2)(5)(3)& &&&java开发环境已经配置好了,运行java和javac是没有错误,但仍不能直接用javac命令编译
java开发环境已经配置好了,运行java和javac是没有错误,但仍不能直接用javac命令编译
悬赏2青鸟豆&|&浏览329
才能回答问题
你的path要配置呀
你还需要配置PATH环境变量
你的文件是不是以java结束的?可能是你用文本编辑的,最后的后缀名还是txt或者其他的 。要确保以.java结束。
本周答题榜
本周回答10题
本周回答6题
本周回答3题
本周回答2题
本周回答1题
Beijing Aptech Beida Jade Bird Information Technology Co.,Ltd北大青鸟IT教育 北京阿博泰克北大青鸟信息技术有限公司 版权所有
京ICP备号-3查看:6917|回复:21
java回车,显示环境变量配置正常,但是用javac编译就提示出错,怎么回事呀?
(66.72 KB)
引用:原帖由 yuke198907 于
08:52 发表
java -version这个能执行成功吗 执行结果:
(853.32 KB)
51CTO学院讲师
引用:原帖由 tanlan11 于
09:16 发表
请参考:/lesson/id-41985.html 还是老师给力啊,直接上视频
(401.89 KB)
引用:原帖由 tanlan11 于
09:16 发表
请参考: 和视频里哪不一样呢?
(853.32 KB)
本帖最后由 tornad007 于
09:43 编辑
引用:原帖由 tanlan11 于
09:16 发表
请参考:/lesson/id-41985.html 你那个视频不管用呀
引用:原帖由 yuke198907 于
08:52 发表
java -version这个能执行成功吗
(401.89 KB)
高级工程师
你看看这个、你们一样的问题、解决了:
太阳光芒万丈却不及蜡烛只为一人照亮、、、
引用:原帖由 IT妖姬 于
11:13 发表
你看看这个、你们一样的问题、解决了:
/thread-.html 没用的。我找到原因了。是JAVA_HOME的问题
这个classpath删掉了,也照样可以用。
改用jdk8了,哈哈
JAVA_HOME=C:\Program Files\Java\jdk1.8.0_20
Path=%JAVA_HOME%\bin
在系统变量里,做上述两个配置。
引用:原帖由 tanlan11 于
09:16 发表
请参考:/lesson/id-41985.html 不好意思,您这个视频看着有点累,
求人不如求自己呀,自己找到问题,才能彻底解决。
引用:原帖由 IT妖姬 于
11:13 发表
你看看这个、你们一样的问题、解决了:
/thread-.html 一直用myeclips,这要配一下环境变量,竟然错了,
高级工程师
引用:原帖由 tornad007 于
11:35 发表
一直用myeclips,这要配一下环境变量,竟然错了, (*^__^*) 嘻嘻……没事、希望你能多了逛逛、我们会帮助你的
太阳光芒万丈却不及蜡烛只为一人照亮、、、
你问题是解决了,但是你classpath配置是错误的,如果不配置classpath或者配置错误,程序应该会找不到类的
引用:原帖由 tornad007 于
22:19 发表
java回车,显示环境变量配置正常,但是用javac编译就提示出错,怎么回事呀?289753 JAVA_HOME指明JDK安装路径,就是刚才安装时所选择的路径(我的是C:\Program Files\Java\jdk1.8.0_20),此路径下包括lib,bin,jre等文件夹(此变量最好设置,因为以后运行tomcat,Eclipse等都需要依靠此变量)。
Path使得系统可以在任何路径下识别java命令,设为:%JAVA_HOME%\%JAVA_HOME%\jre\bin
CLASSPATH为java加载类(class or lib)路径,只有类在classpath中,java命令才能识别,设为:.;%JAVA_HOME%\%JAVA_HOME%\lib\tools.jar (要加.表示当前路径)
特别注意:
◆添加环境变量时,最好在后面加上,不要将原有的环境变量删除,避免影响其他的东西的。
◆环境变量值的结尾没有任何符号,不同值之间用;隔开(unix中用:)。
◆CLASSPATH变量值中的.表示当前目录。
验证是否安装成功:
在cmd中输入java -version会显示当前Java版本
输入javac会显示其用法。
引用:原帖由 ctowolfs 于
11:30 发表
你问题是解决了,但是你classpath配置是错误的,如果不配置classpath或者配置错误,程序应该会找不到类的 jdk1.7yi以上版本已经不用配置classpath了
引用:原帖由 feidaojiang 于
09:42 发表
JAVA_HOME指明JDK安装路径,就是刚才安装时所选择的路径(我的是C:\Program Files\Java\jdk1.8.0_20),此路径下包括lib,bin,jre等文件夹(此变量最好设置,因为以后运行tomcat,Eclipse等都需要依靠此变量)。
Path使得系统可以在任 ... jdk1.7yi以上版本已经不用配置classpath了 。
我这个问题是出在错配在用户变量上,已经解决了
javac没成功,是你环境变量没配置好}

我要回帖

更多关于 无心法师1百度云全集 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信