这是一个问题。假设我有一个 Maven 项目(“A”),它引入了一个不同的 Maven 项目(“B”)作为依赖项。目前两者都使用 Java 7 进行编译。如果项目 B 切换到 Java 8,是否会强制项目 A 也使用 Java 8?
如果是这样,有没有办法解决它 - 也就是说,让项目 B 生成项目 A 可以使用的代码,而无需将项目 B 降级到 Java 7 或将项目 A 升级到 Java 8?例如,让项目 B 执行某种形式的“源 1.8 目标 1.7”,例如。(javac 似乎不喜欢这样,而且我找不到替代编译器——例如,plexus-compiler-eclipse 不支持 Java 8,但这完全是另一个问题;问题是解耦从用于生成它的源版本生成的字节码)