JAVA_HOME should point to a JDK not a JRE

系列

工作中会遇到各种各样奇葩的BUG,有的大有的小。
大的 BUG 耗费时力修完,系统得到优化,是有很大收益的。值得另开一章,大书特书,总结一番心得和精巧的设计。
小的 BUG 修完了收益不大,但是不修又总是觉得别扭。

所以,这一个【DEBUG】系列,会记录我所遇到的中小型BUG,希望给自己留一点记录,也给大家一点借鉴。

背景

在本地环境,笔者一般都是使用 IntelliJ 中的 Maven Plugin 来 build Java 项目。因为方便,鼠标点一下就行了。

P1

这次因为某些原因,需要使用 Terminal 进行编译,命令:mvn compile

P2

突然发现报错了。可是之前(我这么用过)是好的呀。切换回 Maven Plugin 编译一个其它项目,也没有问题。

错误信息

错误信息一大堆,总结归纳如下:

JAVA_HOME should point to a JDK not a JRE

总结:IntelliJ Terminal 的 Java 编译报错,IntelliJ Maven Plugin 的 Java 编译正常工作。

分析

IntelliJ Terminal 中的 Java 使用的是 Windows 系统配置的 JAVA_HOME 对应的版本,是一个 JRE 。

IntelliJ Maven Plugin 中的 Java 使用的是 IntelliJ 中单独配置的,是一个 JDK 。

解决:把 Windows 的环境变量下的 JAVA_HOMEPATH 改成指向 JDK ,重启即可。

原因:公司电脑周末升级的时候,IT 把 Java 重新装了一遍,原来正确的配置被覆盖了。

(我也是醉了...)

原文地址:https://www.cnblogs.com/maxstack/p/14695466.html