<分区>
有谁知道有什么工具可以将使用 lambda 和方法引用的 Java 8 代码(在源代码级别)转换为使用匿名内部类的 Java 7 代码? 我知道 Retrolambda ,但这适用于字节码级别,而不是源代码级别。
目前,我有一个可以作为 IntelliJ 插件使用的版本。 我扩展了当前的 IntelliJ 代码以一次性转换一个包中的所有 lambda,而不是 selecting each lambda individually and converting to anonymous inner class . 但是这种方法的问题是它不能作为一个独立的工具工作,比如 maven 插件,因为它需要 IntelliJ 上下文才能工作。
编辑:请注意,重点是将 lamda/方法引用转换为匿名内部类。我不担心 Java 8 中的 API 更改会被 Java 7 编译器捕获并报告为编译错误。