致命错误: 在类路径或引导类路径中找不到程序包 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}就可以,如果使用了自定义的环境变量,则需要配置环境变量。

<bootclasspath>${java.home}\jre\lib\rt.jar${path.separator}${java.home}\jre\lib\jce.jar</bootclasspath>

OR

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

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

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

无则配置后重启电脑

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容