Apache POI发生了非法反射访问操作

时间:2018-04-28 01:31:33

标签: java apache-poi java-9

我使用Apache POI处理excel文件,从Java 9开始我收到此消息,根据这篇文章JDK9: An illegal reflective access operation has occurred. org.python.core.PySystemState我们应该等待开发人员解决问题,但是我应该离开它在我的新生产版本中是那样的吗?如果我跳过警告,我认为这不应该是一个问题。

WARNING: An illegal reflective access operation has occurred
WARNING: Illegal reflective access by org.apache.poi.util.DocumentHelper (file:/T:/Workspace/Java/Sections%20Manager/libs/poi/poi-ooxml-3.17.jar) to method com.sun.org.apache.xerces.internal.util.SecurityManager.setEntityExpansionLimit(int)
WARNING: Please consider reporting this to the maintainers of org.apache.poi.util.DocumentHelper
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

2 个答案:

答案 0 :(得分:0)

我遇到的错误是: 警告:发生了非法的反射访问操作 警告:org.apache.poi.util.DocumentHelper(文件:/ D:/Libary/poi-3.12/poi-ooxml-3.12-20150511.jar)对方法com.sun.org.apache.xerces的非法反射访问。 internal.util.SecurityManager.setEntityExpansionLimit(int) 警告:请考虑将此报告给org.apache.poi.util.DocumentHelper的维护者 警告:使用--illegal-access = warn启用有关进一步非法反射访问操作的警告 警告:在将来的版本中,所有非法访问操作都将被拒绝

请使用poi-3.6或更高版本,我使用poi-3

答案 1 :(得分:0)

添加更新的“ poi-ooxml”依赖项。它将解决以上所有警告。

<!-- https://mvnrepository.com/artifact/org.apache.poi/poi-ooxml -->
<dependency>
    <groupId>org.apache.poi</groupId>
    <artifactId>poi-ooxml</artifactId>
    <version>4.1.0</version>
</dependency>