Java兼容性 - 使用较新的java构建的导入类

时间:2017-02-23 06:29:13

标签: java compatibility

我正在开发一个项目,其中一些子项目需要使用较旧的JDK构建。但是,同一子项目中的某些类从使用较新JDK构建的第三方jar(另一个子项目)导入类。我的问题是,如果运行时JDK是较新的,则可以导入此类。例如: 我们假设,我的项目是使用JDK 1.6构建的。在其中一个类中,我需要从第三方jar导入类(使用较新的JDK - 1.8构建),我将创建对象和调用方法(没什么特别的)。然后我将用JDK 1.8运行我的项目。整个情景可能吗?

1 个答案:

答案 0 :(得分:1)

据我所知,你没有别的选择,那么用更高的语言级别编译你的所有代码。但是......如果你真的不能做任何奇怪的原因,你可以实施黑客攻击。您可以实现使用棘手依赖项的Runnable。在一个单独的项目中执行,使用较新的java编译它,提供jar并通过您在项目中使用的DI注入Runnable。然后只需在遗留代码中调用run即可。