簡體   English   中英

java.lang.IllegalAccessError:嘗試從類javax.crypto.Cipher訪問類javax.crypto.Cipher $ Transform

[英]java.lang.IllegalAccessError: tried to access class javax.crypto.Cipher$Transform from class javax.crypto.Cipher

我正在嘗試使用AES解密字符串,並且正在使用jce.jar做到這一點。

我有以下方法解密。

 public String decrypt(String strToDecrypt) {
        try {
            Cipher cipher = Cipher.getInstance("AES/ECB/PKCS5PADDING");
            cipher.init(Cipher.DECRYPT_MODE, secretKey);
            setDecryptedString(new String(cipher.doFinal(Base64
                    .decodeBase64(strToDecrypt))));
        } catch (Exception e) {
            System.out.println("Error while decrypting: " + e.toString());
        }
        return null;
    }

但是,在嘗試解密時,出現以下錯誤。

java.lang.IllegalAccessError: tried to access class javax.crypto.Cipher$Transform from class javax.crypto.Cipher

我正在使用java_sdk_1.7.0版本。 我的SDK版本有問題嗎? 有人對此有想法嗎?

由於jms和openjdk中的jce.jar沖突,導致出現此加密錯誤。 通過注釋standalone.xml中的這一行來解決問題:

<--module name="org.jboss.genericjms.provider" slot="main"-->

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM