当前位置:   article > 正文

Gradle 错误:Eclipse环境下gradle报错Could not target platform: 'Java SE 10' using tool chain: 'JDK 8 (1.8)'.

java se 10' using tool chain: 'jdk 8 (1.8)'.

问题简述

当使用gradle 的时候,在build.gradle 文件中,通过如下脚本指定代码的版本。

project.sourceCompatibility=1.10
project.targetCompatibility=1.10
  • 1
  • 2

这个问题其实已经很明显,gradle 是依赖groovy ,groovy又是依赖jdk 的,明显,如果你gradle 使用的jdk版本如果是1.8。但是这里,你却要求gradle 用jdk10对你的代码进行编译,这必然会有问题,因为已知jdk的交叉编译仅仅能够编译版本低于当前jdk版本。例如jdk 8 能编译 1.8 1.7 1.6…1.4版本的java源代码 ,但是不能编译jdk9 或者10 的代码。

怎么理解?举个例子,jdk10的一项新特性是局部变量类型推断 。类似于如下代码

      var x = new ArrayList<String>();
  • 1
  • 1

jdk8 应该怎么理解?根本对于jdk8来说就是无法理解的代码。所以编译的过程中。

解决方法

首先,必须确定你的有jdk10以上的java。本人使用jdk12,你使用jdk10也是没问题的。
在这里插入图片描述

确保你有了jdk 了之后,我们就得分情况解决

命令行方法

命令行方法其实在你配置完成jdk之后已经解决了。此时你只需要作确认即可。
在这里插入图片描述

如果此时不是正确的版本,请注意java home是否配置正确,如果正确。请注意path环境变量中是否包含其他的java,查询办法是where java命令。

Eclipse解决方法

Eclipse环境下,Gradle 使用的jdk 版本是和Eclipse 启动使用的java 版本是一样的。所以,想要解决好在Eclipse环境下的Gradle 运行时,jdk版本的问题。只需要更换Eclipse 使用的Jdk 版本即可。

方法一

修改JAVA_HOME环境变量指向jdk10 的环境变量

方法二

修改eclipse.ini文件
在这里插入图片描述

-vm
C:\Program Files\Java\jdk-10.0.2\bin\javaw.exe

有时候可以这样子配置

-vm
C:\Program Files\Java\jdk-9\bin\server\jvm.dll

类似的目录大家自行查找一下就好了。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/煮酒与君饮/article/detail/735758
推荐阅读
相关标签
  

闽ICP备14008679号