Java 错误:请安装 JCE Unlimited Strength Jurisdiction Policy 文件

Yar*_*Yar 2 java jar jce

我正在开发这个 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)
Run Code Online (Sandbox Code Playgroud)

知道有什么问题吗?

Azi*_*zim 5

我遇到了类似的问题,但是用 eclipse 代替了 Intellij。这可能是 jdk(多个版本)和 jre 的问题。转到您的C:\Program Files\Java目录,在您安装的每个 JDK 和 JRE 的安全文件夹中添加新下载的 JCE jar(取决于 Java 版本)。