2013-07-23 130 views
0

我嘗試在我的Mac上編譯HelloWorld。Java中的Hello World編譯錯誤

public class HelloWorld { 
    public static void main(String args[]) { 
     System.out.println("Hello World!"); 
    } 
} 

我從終端運行:

$javac HelloWorld.java 

,我得到

error: error reading /Users/gioelelamanno/Library/Java/Extensions/algs4.jar; 
cannot read zip file 1 error 

相反Eclispse編譯和運行沒有問題。 我該如何解決它?

+0

您在Mac上安裝了哪個版本的Java? 'java -version'。你下載了所有的更新嗎?似乎庫中存在損壞的庫。既然你只是在做一個HelloWorld,刪除庫應該可以解決你的問題,但不要刪除它(在這種情況下總是首選備份)。 – araknoid

+0

java版本「1.6.0_45」 – Gioelelm

回答

3

很可能,JAR文件algs4.jar已損壞。將其從類路徑中移除,或者根據需要獲取其他副本以供將來編譯。可以下載JAR文件here

+0

非常感謝你,下載algs4.jar和stdlib.jar工作得很好。 但是當我嘗試運行的HelloWorld.class我得到:拋出java.lang.ClassNotFoundException: $的java HelloWorld.class的 異常在線程 「主要」 java.lang.NoClassDefFoundError:通過的HelloWorld /類 – Gioelelm

+0

引起的HelloWorld.class \t在java.net.URLClassLoader的$ 1.run(URLClassLoader.java:202) \t在java.security.AccessController.doPrivileged(本機方法) \t在java.net.URLClassLoader.findClass(URLClassLoader.java:190) \t在java.lang.ClassLoader.loadClass(ClassLoader.java:306) \t at sun.misc.Launcher $ AppClassLoader.loadClass(Launcher.java:301) \t在java.lang.ClassLoader.loadClass(ClassLoader.java:247) – Gioelelm

+0

啊好的抱歉我的愚蠢正確的命令是: $ java HelloWorld(沒有.class) – Gioelelm

0

您需要在eclipse中創建.jar文件。一旦你保存它,那麼你應該能夠在控制檯中查看它。在這種情況下,終端。我有這個相同的問題。這是我解決它的方式。