2012-06-11 126 views
1

,如果我跑java -classpath ./sqljdbc4.jar myclassname錯誤是的java -classpath ./sqljdbc4.jar myclassname

Exception in thread "main" java.lang.NoClassDefFoundError:myclassname

,如果我跑java myclassname錯誤是

java.lang.ClassNotFoundException: com.microsoft.sqlserver.jdbc.SQLServerDriver

它是在Linux上。如何解決它?

+0

我不使用jar文件。它是myclassname.class。我必須使用jar嗎? – lonelyloner

回答

2

包含類包樹的目錄或jar(即包含com目錄的目錄,在下面的示例中)必須位於類路徑中。並且sqljdbc4.jar也必須是。無論是在classpath中認沽:

java -cp ../classes:./sqljdbc4.jar com.foo.bar.MyClassName 

另外請注意,你需要使用的主類的完全限定域名(如上面的例子所示),並在Java的類名按照約定使用駝峯。

+1

它應該是'-cp'而不是'-jar',如:'java -cp。:./ sqljdbc4.jar com.foo.bar.MyClassName'。另請注意,如果它的窗口,在指定classpath時使用';'而不是':'。 – Chandra

+0

你當然是對的。我確定了答案。甚至不知道我爲什麼寫第一個地方。 –

+0

謝謝你們的幫助。 – lonelyloner

相關問題