2014-11-15 45 views
0

我已經在我的電腦(Ubuntu 12.04)中安裝了java 1.7,並且正確設置了Java_Home和路徑。現在我想安裝java 1.6,因爲我想要使用的一個應用程序僅與java1.6一起運行。java.lang.UnsupportedClassVersionError:使用1.7安裝java 1.6時出現異常?

這是我迄今爲止所做的,
1:我下載了jdk1.6並解壓縮了它。
2:修改了包含指向jdk 1.6的java_home和路徑。
3:冉這些更新替代命令

sudo update-alternatives --set java /usr/local/java/jdk1.6.0_45/bin/java 
sudo update-alternatives --set javac /usr/local/java/jdk1.6.0_20/bin/javac 

現在,當我做Java的版本,我看到了正確的版本,我也可以編譯正常,但我不Java類名,我得到以下錯誤

Exception in thread "main" java.lang.UnsupportedClassVersionError: three : Unsupported major.minor version 51.0 
at java.lang.ClassLoader.defineClass1(Native Method) 
at java.lang.ClassLoader.defineClassCond(ClassLoader.java:631) 
at java.lang.ClassLoader.defineClass(ClassLoader.java:615) 
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:141) 
at java.net.URLClassLoader.defineClass(URLClassLoader.java:283) 
at java.net.URLClassLoader.access$000(URLClassLoader.java:58) 
at java.net.URLClassLoader$1.run(URLClassLoader.java:197) 
at java.security.AccessController.doPrivileged(Native Method) 
at java.net.URLClassLoader.findClass(URLClassLoader.java:190) 

我的路徑變量看起來像這樣

/usr/local/bin:/usr/bin:/bin:/usr/games:/usr/local/java/jdk1.7.0_40/bin:/usr/local/java/jre1.7.0_40/bin:/usr/local/java/jdk1.6.0_45/bin:/usr/local/java/jdk1.6.0_45/bin 

我讀的地方,如果Java的1.7自帶的路徑前1.6,將有是一個衝突。情況會是這樣嗎?在那種情況下,如何從路徑變量中刪除它?

回答

1

您的路徑中同時包含jdk 1.6和1.7從路徑中刪除舊版本

+0

如何將其從路徑中刪除?我只是在.profile中添加路徑。也不能我有兩個Java版本安裝? – Dude

+0

如果這個'/ home/wrong/dir /'是你想要刪除的目錄,那麼執行這個PATH ='echo $ PATH | sed -e's /:\/home \/wrong \/dir \/$ //'' –

+0

你爲什麼要在$ sed中放入$? – Dude