package aa.bb.cc.dd;class T1{public static void main(String [] args){System.out.println("hollo world");}}這是一個測試語句,我己經把T1放到了文件aa/bb/cc/dd的目錄下,而且編譯的時候也可以順利通過,但是在輸出的地方一輸出就會出現一堆的英文。好像是Exception in thread "main" java.lang.NoClassDefFoundError:T1<wrong name :aa/bb/cc/dd/T1>之后就一群at java.lang.ClassLoader.defineClass……請問下為什么會這樣的?通過編譯不是代表程序己經沒有錯誤可以運行了嗎?怎么還會這樣的。還有就是上面的英文好似經??梢钥吹?,請問下是什么意思,什么情況下才會報這種錯誤的呢?還有就是我編譯的時候要是用命令:javac -d aa/bb/cc/dd T1.java根本無法找到文件,為什么明明說-d是引用目錄的命令,但用起來確不對的?
1 回答

慕無忌1623718
TA貢獻1744條經驗 獲得超4個贊
你這個命令不對,正確的編譯與執行命令是這樣的:
javac -d . T1.java (編譯的時候,類名不區分大小寫,也可以寫成javac -d . t1.java 注意在-d和點之后都有一個空格)
java aa.bb.cc.dd.T1
添加回答
舉報
0/150
提交
取消