0

この特定のコード行で上記のエラーが発生しています。

KeyFactory keyFactory=keyFactory.getInstance(keyAlgorithm);

        EncodedKeySpec privateKeySpec=new PKCS8EncodedKeySpec(privateKeyBytes);
        PrivateKey privateKey1=keyFactory.generatePrivate(privateKeySpec); 

正確に言うと、これは私が得るエラーです:

GeneratePublicPrivateKeys.java:35: error: non-static method generatePublic(KeySp
ec) cannot be referenced from a static context
PublicKey publicKey1=KeyFactory.generatePublic(publicKey
Spec);

注:これらの投稿
「非静的メソッドは静的コンテキストから参照できません」エラー
非静的メソッドは静的コンテキストから参照できません
などを確認し、そこに提供されている解決策を試しましたが、解決しません私の問題

私は何をすべきか?
前もって感謝します:)

4

2 に答える 2

0

この行を変更してみてください:

PublicKey publicKey1=KeyFactory.generatePublic(publicKey
Spec);

PublicKey publicKey1=keyFactory.generatePublic(publicKey
Spec);
于 2013-04-05T13:10:15.507 に答える
0

変更する必要があります

KeyFactory.generatePublic(...)

することが:

keyFactory.generatePublic(...)

現時点では、コードはgeneratePublic静的であるかのようにメソッドを呼び出そうとしています (つまり、その型のオブジェクトではなく、KeyFactory クラスに関連付けられています)。このメソッドは、クラスの特定のインスタンス (おそらくkeyFactory最初のコード スニペットで参照されているオブジェクト) で呼び出す必要があります。

于 2013-04-05T13:11:34.123 に答える