【问题标题】:Maven does not recognize the $JAVA_HOME jdk installed on Ubuntu shellMaven 无法识别安装在 Ubuntu shell 上的 $JAVA_HOME jdk
【发布时间】:2019-02-23 03:55:47
【问题描述】:

Maven 无法识别 $JAVA_HOME 变量提供的 java_home 路径,即使它明确指向有效安装。

当我与 pom.xml 文件夹位于同一目录时,我无法使用此命令编译我想要的项目。

$ mvn 包

The JAVA_HOME environment variable is not defined correctly This environment variable is needed to run this program NB: JAVA_HOME should point to a JDK not a JRE

如果我想检查版本,同样的事情:

$ mvn -version
The JAVA_HOME environment variable is not defined correctly This environment variable is needed to run this program NB: JAVA_HOME should point to a JDK not a JRE

但我可以看到 $JAVA_HOME 设置正确

$ echo $JAVA_HOME
/usr/lib/jvm/jdk-10.0.10

这里有一些关于我的 java 安装的信息

$哪个java
/usr/bin/java
$readlink -f /usr/bin/java
/usr/lib/jvm/java-11-openjdk-amd64/bin/java

【问题讨论】:

  • 你设置了错误的 java_home。将 java_home 设置为 /usr/java/latest。

标签: java bash maven ubuntu java-home


【解决方案1】:

好吧,这就是最终的结果:

1) 将 etc/environnement 中的 JAVA_HOME 变量编辑为您要使用的任何 java 版本。 (我尝试了很多版本,直到一个成功)

2) 使用以下命令在 shell 中获取新变量:

oliver@oliver:~$ source /etc/environment

这是我的环境文件:

oliver@oliver:~$ cat /etc/environment

PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games" JAVA_HOME="/usr/lib/jvm/jdk-10.0.1" 测试=“供应” 导出 JAVA_HOME 导出测试

【讨论】:

    【解决方案2】:

    符号链接和JAVA_HOME有区别

    链接-> /usr/lib/jvm/java-11-openjdk-amd64/bin/java JAVA_HOME(检查路径是否可用?)->/usr/lib/jvm/jdk-10.0.10

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2023-01-20
      • 1970-01-01
      • 1970-01-01
      • 2010-11-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多