致命错误: 在类路径或引导类路径中找不到程序包 java.lang

一般有两个原因:

  • Path分隔符和系统不匹配,可以通过使用Java的Property来适配,也就是使用${path.separator}

  • Maven编译是读取不到自定义的Java的环境变量,比如使用了${JAVA_HOME}

  • 分隔符
    {path.separator}读取的是Java的System.properties 文件,因为Maven是Java开发的,所以可以运行时使用System.getProperty(“key")读取到path.separator的值

  • 环境变量
    可以使用java的property来完成,使用${java.home}就可以,如果使用了自定义的环境变量,则需要配置环境变量。

${java.home}\jre\lib\rt.jar${path.separator}${java.home}\jre\lib\jce.jar

OR

${JAVA_HOME}/jre/lib/rt.jar${path.separator}${JAVA_HOME}/jre/lib/jce.jar

需要配置JAVA_HOME环境变量。
检查环境变量:

$echo $JAVA_HOME
/Library/Java/JavaVirtualMachines/jdk1.8.0_171.jdk/Contents/Home

无则配置后重启电脑

你可能感兴趣的:(致命错误: 在类路径或引导类路径中找不到程序包 java.lang)