无法在终端(Terminal)运行Java程序问题咨询
终端运行Java失败常见排查方案
- 包路径与执行目录不匹配
若Java源文件首行声明了package 包名;,必须在包结构的根目录(即最上层包文件夹的父目录)执行命令,正确命令格式为java 完整包名.类名,例如类归属com.test包,需在com文件夹的上级目录执行java com.test.Main,不可进入com/test目录直接执行java Main,也不要在类名后加.class后缀。 - 未正确编译生成字节码
执行java命令前需要先用javac编译源文件生成.class字节码。带包结构的代码编译时建议加-d参数自动生成对应包目录,示例命令:javac -d . Main.java,执行后会在当前目录自动生成符合包层级的.class文件。 - 环境变量配置异常
先分别执行java -version、javac -version确认两个命令返回的版本号一致,若提示命令不存在,需要正确配置JAVA_HOME、Path、CLASSPATH三个环境变量,注意CLASSPATH必须包含当前目录.。 - 主类声明不符合要求
待执行的主类必须包含public static void main(String[] args)方法,且主类的类名必须和源文件名完全一致,注意Linux、macOS环境下对大小写高度敏感,大小写不一致也会导致运行失败。
内容的提问来源于stack exchange,提问作者YouYou
相关产品推荐
相关产品推荐

