我注意到Flink Doc显示:
Flink至少需要Java 11才能构建。
另一方面,pom.xml指定源/目标为1.8:
<target.java.version>1.8</target.java.version>
...
<source>${target.java.version}</source>
<target>${target.java.version}</target>
...
我的问题是:为什么Flink需要比pom
规范更高的JDK?
更新
我试着用Java 8从我的计算机上的源代码构建Flink,并且成功了!"* Flink至少需要Java 11才能构建. *"的语句实际上没有意义,除了更高的JDK可能会在构建时带来更好的性能(但我还没有验证这一点)。java -version
是OpenJDK 64位服务器虚拟机Corretto-8.342.07.1(内部版本号25.342-b07,混合模式)。
1条答案
按热度按时间eit6fx6z1#
在实际的代码需求之前,有意更改了文档,以确保新的开发人员从Java 11开始,因为“很快”就需要更改。
来源:Flink ticket上的这条注解将pom.xml中的默认值更改为Java 11,通过导航从the commit that changed the text in the docs链接到的ticket找到:
Flink使用Java8构建的功能在Java8支持被弃用后被隐藏在文档中,因此新的开发人员从一开始就开始使用Java11进行开发。