我正在开发这个 Java 应用程序,它需要访问“JCE Unlimited Strength”文件,我确实安装了它们,当我构建解决方案时(在 Intellij 中)它可以正常工作但是当我制作一个 jar 时
输出,出于某种原因,它给了我这个烦人的错误:
C:\Users\h\whatever\out\artifacts\Accepter_jar>java -cp Accepter.jar Main
org.apache.poi.EncryptedDocumentException: Export Restrictions in place - please install JCE Unlimited Strength Jurisdic
tion Policy files
at org.apache.poi.poifs.crypt.CryptoFunctions.getCipher(CryptoFunctions.java:208)
at org.apache.poi.poifs.crypt.CryptoFunctions.getCipher(CryptoFunctions.java:182)
at org.apache.poi.poifs.crypt.agile.AgileDecryptor.hashInput(AgileDecryptor.java:269)
at org.apache.poi.poifs.crypt.agile.AgileDecryptor.verifyPassword(AgileDecryptor.java:116)
at org.apache.poi.ss.usermodel.WorkbookFactory.create(WorkbookFactory.java:95)
at org.apache.poi.ss.usermodel.WorkbookFactory.create(WorkbookFactory.java:282)
at ExcelJob.loadExcelSheet(ExcelJob.java:22)
at Main.main(Main.java:17)
知道问题出在哪里吗?
最佳答案
我遇到过类似的问题,但使用的是 eclipse 而不是 Intellij。 这可能是 jdk(多个版本)和 jre 的问题。转到您的 C:\Program Files\Java 目录,在您拥有的每个 JDK 和 JRE 的 security 文件夹中添加新下载的 JCE jar(取决于 Java 版本)安装。
关于Java 错误 : please install JCE Unlimited Strength Jurisdiction Policy files,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37888701/