我已將jdk解壓到/ usr/java /中。在CentOS 6中設置JAVA_HOME&CLASSPATH
,我把CLASSPATH,PATH,JAVA_HOME到/ etc/profile文件如下圖所示。
export JAVA_HOME=/usr/java/jdk1.7.0_21
export PATH=$PATH:$JAVA_HOME/bin
export CLASSPATH=$JAVA_HOME/jre/lib/ext:$JAVA_HOME/lib/tools.jar
當我編譯/usr/java/jdk1.0.7_21/bin一些Java文件,
它的工作原理。但是當我在其他文件夾上做同樣的事情時,它不會。
它顯示NoClassDefFoundError。
所以我已經檢查CLASSPATH,PATH,JAVA_HOME通過回聲。
它顯示如下。
[[email protected] a]# echo $JAVA_HOME
/usr/java/jdk1.7.0_21
[[email protected] a]# echo $PATH
/usr/lib64/qt-3.3/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/usr/sbin:/sbin:/home/guest/bin:/usr/java/jdk1.7.0_21/bin:/usr/java/bin:/usr/java/jdk1.7.0_21/bin
[[email protected] a]# echo $CLASSPATH
/usr/java/jdk1.7.0_21/jre/lib/ext:/usr/java/jdk1.7.0_21/lib/tools.jar
我想在控制檯中使用java,我能做些什麼來解決這種情況?
在此先感謝。
PS。 couse我做過source /etc/profile
。
=================的錯誤就是我面臨着===================== ==
當我命令java A(我的類名稱爲A)。
Error: Could not find or load main class A
情況下,我命令java -cp /家/客體/工作區/ AAA/SRC/A/A
Exception in thread "main" java.lang.NoClassDefFoundError: A (wrong name: a/A)
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:791)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:449)
at java.net.URLClassLoader.access$100(URLClassLoader.java:71)
at java.net.URLClassLoader$1.run(URLClassLoader.java:361)
at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
at java.lang.ClassLoader.loadClass(ClassLoader.java:423)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
at java.lang.ClassLoader.loadClass(ClassLoader.java:356)
at sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:482)
================ =====我的代碼全部內容====================================== java部分。路徑是/usr/guest/workspace/AAA/src/a/A.java
package a;
public class A {
public static void main(String[] args) {
System.out.println("a!\n");
}
}
/etc/profile部分。左邊部分是默認的。
export JAVA_HOME=/usr/java/jdk1.7.0_21
export PATH=$PATH:$JAVA_HOME/bin
export CLASSPATH=$JAVA_HOME/jre/lib/ext:$JAVA_HOME/lib/tools.jar
其他本部分可能會幫助您改進。
which java
打印「/ usr/java/bin」。有符號鏈接。- 我的jdk位置是/usr/java/jdk1.7.0_21。 ./bin裏面的每個代碼工作正常。
- 我沒有碰到/root/.bash_profile。我剛剛編輯了/ etc/profile。
感謝這樣的興趣。即使它沒有弄清楚。你的幫助對我來說是巨大的康復:D再次感謝。
你檢查Java的版本和javac - 從控制檯版本?? – prasanth 2013-04-29 04:48:48
@prasanth是的,它工作很好,並顯示適當的消息。我目前正在使用1.7.0_19。感謝您的詢問 – 2013-04-29 04:52:51
您可以發佈您的完整堆棧跟蹤錯誤嗎? – prasanth 2013-04-29 04:56:31