sourceCompatibility和之间有什么关系/区别targetCompatibility?当它们被设置为不同的值时会发生什么?
sourceCompatibility
targetCompatibility
根据Gradle 文档:
sourceCompatibility是“编译 Java 源代码时使用的 Java 版本兼容性”。 targetCompatibility是“为其生成类的 Java 版本”。
我的理解是,targetCompatibility它将生成与特定 Java 版本兼容的 Java 字节码,这是功能的子集sourceCompatibility吗?
targetCompatibility并sourceCompatibility映射到-target releasejavac -source release。源基本上是源语言级别,目标是生成的字节码级别。
-target release
-source release
更多细节可以在 javac的交叉编译部分中找到。