Eclipse is running in a JRE, but a JDK is required

本文提供了解决Eclipse在使用JRE时遇到需要JDK的警告信息的方法,包括检查并配置已安装的JRE及Eclipse配置文件。详细步骤确保了警告不再出现。
Links <!-- #access --><!-- #masthead --><!-- #header -->

Eclipse is running in a JRE, but a JDK is required 解决方法

<!-- .entry-meta -->

安装Maven后每次启动出现警告信息:

Eclipse is running in a JRE, but a JDK is required
Some Maven plugins may not work when importing projects or updating source folders.

分两步解决问题:

1. 检查Eclipse正在使用的JRE

‘Window’ -> ‘Preferences’ -> ‘Java’ -> ‘Installed JREs’ 确定正在使用JDK而非JRE.
image

如果没有JDK, 则先新增一个Standard VM.

2. 配置Eclipse.ini

检查Eclipse配置文件, 增加/编辑以下代码:

  1. -vm
  2. C:\Progra~2\Java\jdk1.6.0_16\jre\bin\javaw
-vm
C:\Progra~2\Java\jdk1.6.0_16\jre\bin\javaw

注意事项:

1. 第一行参数名称, 第二行为值, 不能写到同一行中

2. 关于第二行的值, 因为不允许出现空格, 所以使用Progra~1或2 替代”Program Files (x86)”.
如果在Program Files下, 请使用Progra~1, 如果在x86下, 则使用Progra~2

3. 在文件中的位置, 不能放到最后(不能在-vmargs之后), 不放心的直接放到文件最前, 如:

  1. -vm
  2. C:\Progra~2\Java\jdk1.6.0_16\jre\bin\javaw
  3. -startup
  4. .....
  5. --launcher.defaultAction
  6. openFile
  7. -vmargs
  8. -Dosgi.requiredJavaVersion=1.5
  9. -Xms240m
  10. -Xmx912m
-vm
C:\Progra~2\Java\jdk1.6.0_16\jre\bin\javaw
-startup
.....
--launcher.defaultAction
openFile
-vmargs
-Dosgi.requiredJavaVersion=1.5
-Xms240m
-Xmx912m

3. 重启Eclipse, 警告不再出现.

See: http://tech.karolzielinski.com/m2eclipse-eclipse-is-running-in-a-jre-but-a-jdk-is-required

<!-- .entry-content -->
This entry was posted in Java and tagged Eclipse, Java, JDK. Bookmark the permalink.
<!-- .entry-utility -->
<!-- #post-## --> <!-- #nav-below -->

3 Responses to Eclipse is running in a JRE, but a JDK is required 解决方法

  1. Firm says:
    <!-- .comment-author .vcard --> <!-- .comment-meta .commentmetadata -->

    还真是麻烦。。。

    <!-- .reply -->
    <!-- #comment-## -->
  2. xinba says:
    <!-- .comment-author .vcard --> <!-- .comment-meta .commentmetadata -->

    试了好半天,不管用,直接加参数,就好了
    eclipse -vm c:\jdk1.4.2\jre\bin\javaw

    <!-- .reply -->
    <!-- #comment-## -->
  3. flysnack says:
    <!-- .comment-author .vcard --> <!-- .comment-meta .commentmetadata -->

    根据注意事项3,把代码放到最前面后,配置成功。

    <!-- .reply -->
    <!-- #comment-## -->

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

Name *

Website

Comment

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

<!-- #respond -->
<!-- #comments -->
<!-- #content -->
<!-- #container -->
### 解决方案 在Eclipse环境中遇到“No compiler is provided”的错误提示通常是因为当前运行环境使用的是JRE而不是完整的JDK。以下是针对该问题的具体解决方案: #### 1. 验证当前使用的虚拟机 确认Eclipse正在使用JDK而非JRE作为其运行时环境。尽管尝试通过`eclipse.ini`文件指定VM路径(如`-vm C:\Program Files\Java\jdk1.7.0_45\bin\javaw.exe`),但如果配置不正确,仍然可能导致Eclipse继续依赖默认的JRE[^1]。 #### 2. 修改已安装的JRE设置 进入Eclipse首选项界面调整所使用的JRE版本: - 路径导航至 `Window -> Preferences -> Java -> Installed JREs`. - 确认列表中存在目标JDK条目(例如:`C:\Program Files\Java\jdk1.6.xx`)。如果未找到,则需手动添加对应位置。 - 对选定的JDK执行编辑操作以验证其中包含必要的库文件(比如`tools.jar`)。必要情况下可通过“Add External JAR”选项补充缺失组件[^2]。 #### 3. 处理跨版本兼容性问题 当设定编译参数中的source/target级别低于实际采用的JDK版本时,可能会引发API匹配方面的冲突。这是因为虽然可以通过这些标志控制字节码格式,但基础类库始终指向更高版本的rt.jar文件[^3]。因此建议保持开发工具链各部分的一致性——即源代码标准、目标平台以及底层支持库均应协调统一。 ```java // Example configuration snippet demonstrating consistent settings across project properties. public class CompilerSettings { public static void main(String[] args) { System.out.println("Ensure all configurations align with selected JDK version."); } } ``` 上述方法综合考虑了运行环境切换、基本构件加载以及潜在的版本差异处理等方面的内容,旨在彻底消除由于缺乏适当JDK而导致的各种异常状况。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值