發現問題
切換到mac平台后,突然想寫點程序運行在mac下,想到mac自帶java,會方便好多。不過在這過程中遇到了麻煩:
總是提示 “錯誤: 找不到或無法加載主類”
工程結構
查了好久,終於找到原型所在,發現網上很多資料都寫的都不太多,自己記錄一下。先看看工程的位置和目錄。
我的eclipse 工作空間位置是: /Users/zhangyunfei/workspace_java
我的工程名字叫:hellodemo
我的main class 的package name (包名)為: hellodemo.zhangyf , 完整類名是: hellodemo.zhangyf.MainClass
那么工程的 主路徑就是: /Users/zhangyunfei/workspace_java/hellodemo,結構如下:
hellodemo
bin
hellodemo
zhangyf
MainClass.class
src
hellodemo
zhangyf
MainClass.java
其中bin 是eclipse自動生成的 輸出文件,eclipse會將java文件編輯成 *.class文件。這個 *.class文件才是可以運行的。
相對路徑執行方式
cd /Users/zhangyunfei/workspace_java/hellodemo
java -cp bin hellodemo.zhangyf.MainClass
注釋: 這里先進入 項目的跟路徑 ,然后使用相對路徑 bin 來執行。
絕對路徑執行方式
在我的這個項目結構下,執行這個class的 命令是,你可以在 bash(命令提示窗口)中輸入下面的指令來執行它:
java -cp /Users/zhangyunfei/workspace_java/hellodemo/bin hellodemo.zhangyf.MainClass
其中 java 是執行java class的執行指令,-cp 表示 class path,即class的路徑,后面跟着實際的路徑,注意,是 “class 所在的跟路徑”,即 bin 目錄所在的路徑。再后面要跟上 class的全名稱。
感謝
參考:http://bbs.csdn.net/topics/390813742