Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/maven/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java “构建失败运行”;mvn清洁安装";。我刚升级了大苏尔_Java_Maven - Fatal编程技术网

Java “构建失败运行”;mvn清洁安装";。我刚升级了大苏尔

Java “构建失败运行”;mvn清洁安装";。我刚升级了大苏尔,java,maven,Java,Maven,mvn清洁安装建筑故障 [INFO] Total time: 1.911 s [INFO] Finished at: 2020-11-14T19:07:37+08:00 [INFO] ------------------------------------------------------------------------ [ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler

mvn清洁安装建筑故障

  [INFO] Total time:  1.911 s
    [INFO] Finished at: 2020-11-14T19:07:37+08:00
    [INFO] ------------------------------------------------------------------------
    [ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.8.1:compile (default-compile) on project es-starter: Compilation failure
    [ERROR] No compiler is provided in this environment. Perhaps you are running on a JRE rather than a JDK?
    [ERROR]
    [ERROR] -> [Help 1]
    [ERROR]
    [ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
    [ERROR] Re-run Maven using the -X switch to enable full debug logging.
    [ERROR]
    [ERROR] For more information about the errors and possible solutions, please read the following articles:
    [ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoFailureException
Java与Maven环境

➜

      ~ which java
    /Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home/bin/java
    ➜  ~ mvn -v
    Apache Maven 3.6.1 (d66c9c0b3152b2e69ee9bac180bb8fcc8e6af555; 2019-04-05T03:00:29+08:00)
    Maven home: /Users/munan/Documents/work/develop/maven/apache-maven-3.6.1
    Java version: 1.8.0_192, vendor: Oracle Corporation, runtime: /Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home
    Default locale: zh_CN, platform encoding: UTF-8
    OS name: "mac os x", version: "10.16", arch: "x86_64", family: "mac"
环境似乎没有问题。
那么导致构建失败的问题在哪里呢?

嘿,这是错误 [错误]此环境中未提供编译器。也许您运行的是JRE而不是JDK

您必须切换到openJdk来执行maven清理和安装 首先,你必须下载它,你可以很容易地找到它。 在eclipse中,您可以右键单击项目,然后单击构建路径,然后设置openJDK In libraries选项卡。 在此之后,这些错误将不会出现,但在每个FMP之后,它可能会切换回jre。
希望帮助中包含JRE路径,请使用JDK(JDK包括JRE)


它将解决您的问题。

在将Mac升级到Big Sur之后,我也面临同样的问题!所以我设置了JAVA_HOME env变量,现在一切都恢复正常了。打开终端,点击以下命令自行解决


$ vim .bash_profile 
export JAVA_HOME=$(/usr/libexec/java_home)
$ source .bash_profile
$ echo $JAVA_HOME
/Library/Java/JavaVirtualMachines/1.7.0.jdk/Contents/Home

通过运行以下命令检查java_主页:

/usr/libexec/java_home-V


请在此处阅读更多信息-

BigSur出于某种原因添加了JRE路径 当我需要JDK(而不是JRE)时,我发现它起了作用

  • 转到/Library/Internet插件
  • 通过执行rm命令删除JavaAppletPlugin.plugin目录 以root用户身份或使用sudo工具执行命令
  • 转到/库/首选项窗格
  • 通过将rm命令作为命令执行来删除JavaControlPanel.prefpane root用户或使用sudo工具

  • 在将Mac升级到Big Sur之后,我也面临着同样的问题


    BigSur出于某种原因添加了JRE路径,并且比您自己的JDK优先级更高

    以下是我的解决方案:

    第一:

    /usr/libexec/java_home -V
    
    那么也许你会得到:

    Matching Java Virtual Machines (2):
        1.8.202.08 (x86_64) "Oracle Corporation" - "Java" /Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home
        1.8.0_202 (x86_64) "Oracle Corporation" - "Java SE 8" /Library/Java/JavaVirtualMachines/jdk1.8.0_202.jdk/Contents/Home
    /Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home
    
    所以第二个是我们的真实JDK。 只需在bash概要文件中编辑JAVA_主页

    vim ~/.zshrc
    export JAVA_HOME="/Library/Java/JavaVirtualMachines/jdk1.8.0_202.jdk/Contents/Home"
    source vim ~/.zshrc
    echo $JAVA_HOME
    
    那就行了!祝你愉快

    或者您可以通过以下命令重新安装jdk8:

    brew tap adoptopenjdk/openjdk
    brew cask install adoptopenjdk8
    

    如果您已经在bash概要文件中使用了类似于
    export JAVA_HOME=$(/usr/libexec/JAVA_HOME-v1.8)
    的内容,请通过指定更多JAVA版本来更新该命令

    例如,当我执行
    /usr/libexec/java_home-V
    时,我得到:

    Matching Java Virtual Machines (3):
    11.0.3 (x86_64) "Oracle Corporation" - "Java SE 11.0.3" /Library/Java/JavaVirtualMachines/jdk-11.0.3.jdk/Contents/Home
    1.8.231.11 (x86_64) "Oracle Corporation" - "Java" /Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home
    1.8.0_181 (x86_64) "Oracle Corporation" - "Java SE 8" /Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home
    

    我将命令更新为
    export JAVA_HOME=$(/usr/libexec/JAVA_HOME-v1.8.0)
    ,然后正确设置了JAVA_HOME。

    我怀疑applet插件是JDK./Library/Internet插件/JavaAppletPlugin是JRE。我担心我的解决方案可能也适用于您,请检查另一个问题,您知道为什么“/usr/libexec/JAVA_HOME-v1.8”不在MacOS上生效
    ➜  libexec/usr/libexec/java_home-V匹配java虚拟机(3):15.0.1(x86_64)“Oracle公司”-“java SE 15.0.1”/Library/java/JavaVirtualMachines/jdk-15.0.1.jdk/Contents/home 1.8.192.12(x86_64)“Oracle公司”-“java”/Library/Internet插件/JavaAppletPlugin.plugin/Contents/home 1.8.0_192(x86_64)“甲骨文公司”-“Java SE 8“/Library/Java/JavaVirtualMachines/jdk1.8.0_192.jdk/Contents/Home
    您可以找到这篇文章的帮助,非常感谢您的评论。但事实是,我无法通过
    /usr/libexec/Java_Home-v1.8
    更改版本。杰诺夫不支持大苏尔。我不知道Mac将JRE主页放在路径中的原因。
    /Library/Internet plugins/JavaAppletPlugin.plugin/Contents/Home
    。我认为这是根本原因这是唯一对我有效的解决方案。谢谢。