Sai*_*eek 588 java eclipse m2eclipse maven java-7
我正在使用m2eclipse在Eclipse中编译一个项目.我在Eclipse中设置JDK路径,如下所示:
Windows-->preferences-->installed jres--> jdk1.7.xx path
Run Code Online (Sandbox Code Playgroud)
但这显示出错误
[ERROR] COMPILATION ERROR :
[INFO] -------------------------------------------------------------
[ERROR] No compiler is provided in this environment. Perhaps you are running on a JRE rather than a JDK?
[INFO] 1 error
[INFO] -------------------------------------------------------------
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 1.424s
[INFO] Finished at: Tue Oct 29 15:21:01 IST 2013
[INFO] Final Memory: 5M/15M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler- plugin:3.1:compile (default-compile) on project TEST-WEB: Compilation failure
[ERROR] No compiler is provided in this environment. Perhaps you are running on a JRE rather than a JDK?
Run Code Online (Sandbox Code Playgroud)
jai*_*ter 919
此外,您可能需要更改Maven JRE(请参阅@ jlars62答案),如下所示.转到运行 - >运行配置,选择我正在运行的Maven Build(从左侧面板).然后,我单击了JRE选项卡并选择了Workspace默认JRE选项
Tha*_*ran 134
对我来说,这正是日食的主人所抱怨的

所以,我按下Edit按钮并改变JDK文件夹的路径,然后清理项目,一切都开始工作
ksn*_*tum 117
对我来说,在我对pom.xml进行此更改之前没有任何工作:
<build>
...
<plugins>
...
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.1</version>
<configuration>
<fork>true</fork>
<executable>C:\Program Files\Java\jdk1.7.0_45\bin\javac.exe</executable>
</configuration>
</plugin>
</plugins>
</build>
Run Code Online (Sandbox Code Playgroud)
其他说明
我可以看到m2e正在JRE中执行,而不是JDK.我没有做任何改变,包括将其添加到eclipse.ini:
-vm
C:\Program Files\Java\jdk1.7.0_45\bin\javaw.exe
Run Code Online (Sandbox Code Playgroud)
最后,我从来没有在JDK中执行m2e,但是明确地设置Java编译器(如上所述)就可以了.
msa*_*gel 110
JAVA_HOME环境变量设置为JDK根文件夹 - 如果运行命令行或maven(mvn)则需要.
JAVA_HOME更多信息)jla*_*s62 36
当我试图在eclipse中进行maven构建时,我遇到了这个错误.
对我来说,答案是Run- > Run Configurations,选择Maven Build我正在运行(从左侧面板).然后,我单击JRE选项卡并选择该选项Workspace default JRE
小智 29
转到Windows - >首选项 - > Java - >已安装的JRE
单击添加 - >标准VM - >下一步 - >目录
并在我的案例路径中浏览JDK C:\Program Files\Java\jdk1.8.0_111
然后点击完成.
选择JDK - > Apply - > Ok
你完成了.
ank*_*kit 14
我有同样的问题,我只是添加JAVA_HOME到环境变量.
JAVA_HOME从项目目录中添加打开命令提示符并运行mvn clean install(不要使用intellij终端).Sir*_*lot 13
我尝试了以上所有,但仍然得到相同的错误消息.
在我的例子中,实际的JRE在项目特定的构建路径中被错误地用作JRE系统库,这显然超越了这里讨论的所有其他设置.
如果是这样,请尝试以下方法:
如果jaipster的答案不起作用,另一种方法是转到:
Window> Preferences> Java> Installed JREs
然后编辑jre,使其指向jdk而不是jre(jre包编辑器中提交的jre home)
这对我有用.
如果Maven从中运行命令cmd,请确保在运行命令之前设置jdk路径.在我的例子中,我创建了一个.bat包含以下内容的文件:
set JAVA_HOME=C:\Program Files\Java\jdk1.8.0_60
start cmd.exe /k "cd c:\aem_proj\sis\aau"
Run Code Online (Sandbox Code Playgroud)
在尝试使用我的项目应用程序构建jar文件时遇到了同样的问题mvn clean install,尽管应用程序在从Eclipse运行时工作正常.
问题确实太天真了,我没有设置JAVA_HOME环境变量.我所要做的就是将JAVA_HOME环境变量设置为JDK目录,确保它不是"\ bin"并且没有分号";" .
我的理解如下:
该应用程序在Eclipse工作细如JRE系统库指的是JRE 中的JDK文件夹,而不是外部JRE文件夹中没有JDK.[正如其他答案所解释的那样]
此配置不适用于我们在命令提示符下运行的maven命令.它仍然会查找JAVA_HOME变量来访问JRE系统库,当找不到它时,它会引用没有JDK的外部JRE文件夹.
小智 7
问题陈述= 此环境中未提供编译器。也许您在 JRE 而不是 JDK 上运行?智能
解决方案
请像下面这样设置环境变量来解决问题
变量名:JAVA_HOME
变量值:C:\Program Files\Java\jdk1.8.0_202
变量名:M2_HOME
变量值:C:\Program Files\apache-maven-3.6.0
此外,在“系统变量”中添加 Java 和 maven 路径,如下所示:
C:\Program Files\Java\jdk1.8.0_202\bin
C:\Program Files\apache-maven-3.6.0\bin
虽然问题是关于Eclipse设置错误,但认为修复此错误的答案IntelliJ和 Windows 10 设置在这里也可能会有所帮助。
1 . 转到File--> Settings--> Build, Execution, Deployment--> Build Tools--> Maven-->Importing
2 . 如下图设置JDK为ImporterJAVA_HOME
还JAVA_HOME应该JDK在 Environment Variables --> System variables 中设置为path 并添加%JAVA_HOME%\bin到 Path System variables
小智 6
有几个选项可供指定.
步骤:项目资源管理器中的项目正确转到运行 - >运行配置 - >单击Maven构建 - >单击构建配置/或创建新配置.您将在下面看到窗口作为给定的快照,单击那里的JRE选项卡.
您看到有3个选项1)工作区默认JRE 2)执行环境3)备用JRE
1)工作区默认JRE从顶部的"窗口"菜单设置 - >首选项 - > Java - >已安装的JRE - 在这里你可以添加你的jdk
2)执行环境jdk可以在@ksnortum提到的pom.xml中设置
<build>
<plugins>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.1</version>
<configuration>
<fork>true</fork>
<executable>C:\Program Files\Java\jdk1.7.0_45\bin\javac.exe</executable>
</configuration>
</plugin>
</plugins>
Run Code Online (Sandbox Code Playgroud)
3)备用JRE可用于从目录中选择jdk
对我而言,JRE位于JDK路径之前的PATH环境变量中
因此,我删除了1.交换它们也可能会解决。
我的答案与Windows环境中的Eclipse有关。
我去了Preferences-> Java-> Installed JRE,在这里没有看到JDK。我只在这里看到了JRE。因此,我添加了JDK,然后取消选中了JRE。然后检查了JDK。然后,我使用“运行配置”运行了POM文件。选择选项卡JRE并选择选项“ Workspace Default ...”。这是图像
| 归档时间: |
|
| 查看次数: |
1069088 次 |
| 最近记录: |