を使用してクラスをコンパイルするjavax.crypto.Mac
と、このエラーメッセージが表示されますか?
パッケージ
javax.crypto
が存在しません
jre/lib/jce.jar
コンパイルクラスパスに含めることで修正できます。
jce.jar
デフォルトのjdkクラスパスにないのは なぜですか?jre/lib/rt.jar
クラスパス上にあり、他のjavax
パッケージが含まれていますが、jceは特別なようですか?
を使用してクラスをコンパイルするjavax.crypto.Mac
と、このエラーメッセージが表示されますか?
パッケージ
javax.crypto
が存在しません
jre/lib/jce.jar
コンパイルクラスパスに含めることで修正できます。
jce.jar
デフォルトのjdkクラスパスにないのは なぜですか?jre/lib/rt.jar
クラスパス上にあり、他のjavax
パッケージが含まれていますが、jceは特別なようですか?
OK、これは私の側の間違いでした。コードのコンパイルに使用していたAntファイルには、javac
タスクに次の属性がありました。
bootclasspath="${java.home}/lib/rt.jar"
ドー。次のようにJCEjarを追加できます。
bootclasspath="${java.home}/lib/rt.jar:${java.home}/lib/jce.jar"
注意してください!このクラスは、oracleのjdkにのみ含まれています。つまり、プログラムは異なるjdk(openjdkなど)間で移植できません。このライブラリは外部で使用することをお勧めします。ここからダウンロードできます。
それは私のために働きました、私はzipをダウンロードして、zipファイルでC:\Program Files\Java\jdk1.7.0_11\jre\lib\ext
説明されているようにこれらの3つのファイルを貼り付けjce-1_2_2/jce1.2.2/INSTALL.html
ました。
jce1_2_2.jar
US_export_policy.jar
local_policy.jar