【问题标题】:Maven Java home configurationMaven Java 主页配置
【发布时间】:2017-06-22 11:15:57
【问题描述】:

我安装了 JDK 并设置了 Maven。调用mvn -version i get 返回:

JAVA_HOME 环境变量未正确定义 运行此程序需要此环境变量注意:JAVA_HOME 应指向 JDK 而不是 JRE

$JAVA_HOME 变量在系统变量中设置为C:\Program Files\Java\jdk1.8.0_131\bin

调用%JAVA_HOME% 返回路径C:\Program Files\Java\jdk1.8.0_131\bin

问题出在哪里?

【问题讨论】:

    标签: java maven java-home


    【解决方案1】:

    正如您在documentation 中看到的,JAVA_HOME 变量必须指向 java 安装路径,而不是 bin 文件夹。

    改成C:\Program Files\Java\jdk1.8.0_131

    【讨论】:

      【解决方案2】:

      问题是关于 Windows 的,但我来这里是为了解决 Ubuntu 上的问题。 我遇到了类似的问题。我在/etc/environment 中配置了$JAVA_HOME 比如$JAVA_HOME=PATH_TO_JDK 比如$JAVA_HOME=/home/max/jdk1.8.0_144

      小心

      • 路径声明后的空格$JAVA_HOME=/home/max/jdk1.8.0_144[[_NO_WHITE_SPACE_AFTER_DECLARATION]]
      • 不要放任何双撇号$JAVA_HOME="/home/max/jdk1.8.0_144"
      • 不要放 /bin 例如$JAVA_HOME=/home/max/jdk1.8.0_144/bin

      【讨论】:

        【解决方案3】:

        是的,最初的问题是关于纯 windows,但对于那些来这里想知道 windows linux 子系统 WSL 的人,我偶然发现了试图设置我的 win WSL,使用 windows java Open jdk 二进制文件的东西。虽然有一段时间我放弃了这个想法。使用 'sudo apt install ...' 安装 jdk,然后从安装路径设置 WSL java home:

        root@mypc://# java -version
        openjdk version "1.8.0_265"
        OpenJDK Runtime Environment (build 1.8.0_265-8u265-b01-0+deb9u1-b01)
        OpenJDK 64-Bit Server VM (build 25.265-b01, mixed mode)
        
        root@mypc://# which java
        /usr/bin/java
        root@mypc://# realpath /usr/bin/java
        /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java
        

        改用你的真实路径。

        root@mypc://# export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64
        root@mypc://# mvn -v
        Apache Maven 3.6.2 (40f52333136460af0dc0d7232c0dc0bcf0d9e117; 2019-08-27T15:06:16Z)
        Maven home: /mnt/c/javaDir/mvn/apache-maven-3.6.2
        Java version: 1.8.0_265, vendor: Oracle Corporation, runtime: /usr/lib/jvm/java-8-openjdk-amd64/jre
        Default locale: en_US, platform encoding: UTF-8
        OS name: "linux", version: "4.4.0-43-microsoft", arch: "amd64", family: "unix"
        

        将 export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64 添加到 ~/.bash_profile 中,以便在每次启动 linux 子系统时进行设置。

        【讨论】:

          猜你喜欢
          • 2014-06-04
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2017-10-21
          • 2023-04-04
          • 1970-01-01
          • 2011-09-06
          • 2015-04-01
          相关资源
          最近更新 更多