非法的反射访问操作会阻止程序运行吗?

92dk7w1h  于 2021-06-21  发布在  Flink
关注(0)|答案(1)|浏览(368)

我正在做一个使用java和flink构建tweets数据流的项目。运行程序时收到以下错误:

WARNING: An illegal reflective access operation has occurred
WARNING: Illegal reflective access by org.apache.flink.core.memory.HybridMemorySegment (file:/home/haydn/.m2/repository/org/apache/flink/flink-core/1.4.2/flink-core-1.4.2.jar) to field java.nio.Buffer.address
WARNING: Please consider reporting this to the maintainers of org.apache.flink.core.memory.HybridMemorySegment
WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations
WARNING: All illegal access operations will be denied in a future release

程序似乎是在之后运行的,所以我只是想知道这个错误是否意味着任何东西都不能按预期工作,或者是否一切都会好起来。
我注意到有人在其他帖子中对如何隐藏信息给出了建议,这就是为什么我认为这并不重要。
谢谢:)

9avjhtql

9avjhtql1#

所以我只是想知道这个错误是否意味着任何东西都不能按预期工作,或者是否一切都会好起来。
要检查这一点,您需要为应用程序编写测试。由于这只是一个警告,它本身不应该破坏您的应用程序。
警告:所有非法访问操作将在将来的版本中被拒绝
这意味着您的应用程序现在可以工作,但一旦您将jdk升级到新版本,它就会停止工作。因为Java9中引入了模块的概念 public access修饰符的含义与以前的java版本不同。上面的警告意味着其中一个flink库的代码试图访问属性 java.nio.Buffer.address 不会导出到该模块。

相关问题