Software_King-jdk配置java
2019獨角獸企業重金招聘Python工程師標準>>>
public class Hello{
public static void main(String[] args){
?
System.out.println("Hello World!");
}
}
但是class文件 在cmd下無法用 java Hello.class運行出現異常.如下:
Exception in thread "main" java.lang.NoClassDefFoundError: class
Caused by: java.lang.ClassNotFoundException: class
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClassInternal(Unknown Source)
Could not find the main class: class.Program will exit.
其中hello是我的文件名……
:
類名的確也是hello的沒錯。
程度是
許氏點評:
一句話:環境變量classpath(類路徑)沒有設置正確,使得JAVA虛擬機無法找到類來執行目標程序。
?
詳細原因:java是通過java虛擬機來解釋運行的,也就是通過java命令; javac編譯生成的.class文件就是虛擬機要執行的代碼, 稱之為字節碼(bytecode),虛擬機通過classloader來裝載這些字節碼,也就是通常意義上的類.這里就有一個問題,classloader從哪里知道java本身的類庫及用戶自己的類在什么地方呢?或者有著缺省值(當前路徑).或者要有一個用戶指定的變量來表明, 這個變量就是類路徑(classpath),或者在運行的時候傳參數給虛擬機.
通過這段文字,你就知道,為什么javac編譯通過了,但是java命令卻出錯(類定義沒找到)的原因了。
就是環境變量classpath(類路徑)沒有設置正確,使得JAVA虛擬機的classloader無法找到類來執行目標程序。
?
?
下面來搭建jdk1.6.0_25
?
1、新建系統變量JAVA_HOME變量(JAVA_HOME指明JDK安裝路徑。)
設定值為:
C:\Program Files\Java\jdk1.6.0_25
?
2、在系統變量中的path中添加(Path使得系統可以在任何路徑下識別java命令。):
;%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;
3、新建系統變量CLASSPATH(CLASSPATH為java加載類(class or lib)路徑,只有類在classpath中,java命令才能識別.)
設定值為:
.;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar
注意一定要加“.”,“.”代表當前目錄,即可到處建立.java文件,java class都能找到并編譯運行用戶的.java文件。
?
?
4.進入dos窗口運行“java –version 如果顯示下面內容則成功。
?
轉載于:https://my.oschina.net/softwareking/blog/653152
總結
以上是生活随笔為你收集整理的Software_King-jdk配置java的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 缓存依赖中cachedependency
- 下一篇: mac 抓包工具chares破解