sha*_*ams 5 java lambda inner-classes java-7 java-8
有没有人知道将Java 8代码(源代码级)转换为使用匿名内部类的Java 7代码中的lambda和方法引用的任何工具?我知道Retrolambda,但它适用于字节码级别,而不是源级别.
现在,我有一个工作版本作为IntelliJ插件.我扩展了当前的IntelliJ代码,一次转换包中的所有lambda,而不是单独选择每个lambda并转换为匿名内部类.这种方法的问题在于它无法作为一个独立的工具工作,比如一个maven插件,因为它需要一个IntelliJ上下文才能工作.
编辑:请注意,重点是将lamda /方法引用转换为匿名内部类.我并不担心Java 8中的API更改会被Java 7编译器捕获并报告为编译错误.
小智 1
在 IntelliJ Idea 中打开“项目结构”,然后将项目语言级别设置为 7.0。如果需要,请再次分析您的代码。这在大多数情况下都会有所帮助,但更喜欢逐类(逐个文件)地进行。
| 归档时间: |
|
| 查看次数: |
3458 次 |
| 最近记录: |