原文: https://www.cnblogs.com/vir56k/p/5241567.html
发现问题
切换到mac平台后,突然想写点程序运行在mac下,想到mac自带java,会方便好多。不过在这过程中遇到了麻烦:
总是提示 “错误: 找不到或无法加载主类.
查了好久,有资料说改classpath, 我尝试过没解决问题, 转的这篇文章确实解决了我的问题
工程结构
我的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的全名称。