Eclipse如何支持Lambda表达式

1. 最近因为要接触另外一个新项目,而且项目中用到Lambda表达式,所以在Import该project到Spring tool suite(简称STS)中的时候报错非常多:

163149_aiBw_942203.png

对于“<>”这种error,将STS的编译环境都换成1.7的以后,确实就可以解决了。

171117_COVv_942203.png

但是对于下图中明显是Lambda表达式语法的error却无法解决:

163439_92Oc_942203.png

百度之后发现要支持Java Lambda表达式,就必须支持Java8,所以准备下载对应的插件,但是并未搜索到需要的支持STS的Java 8 support:

163655_t7fz_942203.png

于是乎继续百度,发现这个版本的STS并不支持Java 8特性 (而且在选择Java Compiler Level版本的时候,你可以看到STS最高只支持1.7,这时候也应该可以想到不支持Java 8)。。。

2. 所以就去下载了比较新的Eclipse版本Neon(当然也可以下载3.8.4及以上版本的STS),但是双击eclipse.exe后直接给我报错:

Java was started but returned exit code=13. (因为当时立马去找解决方法了,所以并未截图,就借用他人的图):

164352_olzk_942203.png

搜索一下,发现去Control Panel -> Programs -> Programs and Features -> Uninstall Java 8相关的Updates,然后重启Eclipse就可以解决了。(这是因为Eclipse如果是64位的,电脑上就不能有32位的Jdk,会冲突。

此时导入有Lambda表达式的Project,发现可以正常编译和运行。

3. 若你安装的是其他版本,比如Eclipse Kepler (4.3.2) SR2, 可能需要另外安装 Java 8 support for Eclipse Kepler SR2. 具体步骤如下:

  • 打开Eclipse的Help->Eclipse Marketplace-> Search Java 8 Kepler:

165738_YI6W_942203.png

165758_9yPh_942203.png

165848_pJ37_942203.png

165903_Lxdj_942203.png

165912_W9xE_942203.png

  • 重新打开eclipse之后,组件就安装好了,然后我们需要创建一个类输入java8特性的代码测试一下我们的eclipse是否可以正常的支持java8的代码:

java8新特性系列:[1]让你的eclipse支持java8

  • 此处省略创建Class的步骤,直接贴上一个Lambda的小例子:

/** 
* 针对eclipse是否支持java8小测试 
* MainClass
* @author Vicky Zhu
* */
public class MainClass {
  public static void main(String[] args) {
        /*
         * 尝试输入一个简单的lambda表达式来测试是否可以编译和运行java8的代码
         */
        new Thread(() -> System.out.println("这是一个java8的小例子,可以使用lambda表达式")).start();
    }
}

  • 右键Run As -> Java Application,如果能够正常编译执行,就说明Eclipse的Java 8组件已经完全安装OK.

 

 

转载于:https://my.oschina.net/u/942203/blog/912694

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值