アクセス制限です。タイプ 'BASE64Decoder' は API ではない (必要なライブラリ xxx の制限)
アクセス制限です。タイプ 'BASE64Decoder' は API ではない (必要なライブラリ xxx の制限)
誰かが遭遇したかもしれないのは、次のようなエラーです。
あるいは、ヒントかもしれません
を使用することで
import sun.misc.BASE64Decoder;
import sun.misc.BASE64Encoder;
すると、こんな問題が発生します。
問題の原因
参考:https://stackoverflow.com/questions/44268690/access-restriction-the-type-base64decoder-is-not-api
すべてsunです。* および com.sun. * パッケージは、Java の実装では非公開です。将来のバージョンの Java では、パッケージが変更され、それに依存するアプリケーションコードが破壊される可能性があります。対照的に、java.*、javax.*、javafx.* パッケージのすべてのクラスは、定型化されています。それらの名前とパブリックメンバーは変更されず、削除されることもありません(理論的には、非推奨のものを除いては)。このため、これらのクラスはパブリックAPIの一部ではないことを示すメッセージが表示されます。これらのクラスは一般に公開するのには適していません。Java 8 からは java.util.Base64 を使うべきです。しかし、Java 7 を使っているように見えるので、DatatypeConverter.parseBase64Binary と DatatypeConverter.printBase64Binary を使う必要があります。 should also 2017年7月にリリース予定の Java 9 ではプログラムが sun.* コースへアクセスできないことについて言及します。https://mreinhold.org/blog/jigsaw-module-system をご覧ください。
回避策
に変更します。 java.util.Base64など。
String hash = new String(Base64.getEncoder().encode(raw));
return new String(Base64.getEncoder().encode(rawString.getBytes(charsetName)));
return new String(Base64.getDecoder().decode(encrypted.getBytes(charsetName)));
関連
-
Map<String,Boolean> 型をインスタンス化できません。
-
Javaでエラーが発生しました。非静的フィールドへの静的な参照を作成できません。
-
エラー: jdkのバージョンの問題により、クエリへの参照が曖昧になる
-
Java 文字クラスとメソッド
-
java.lang.UnsupportedOperationException 解決方法
-
リクエストのエンティティが大きすぎる問題の解決
-
java にリソースリークがある: 'XXX' は決して閉じられない ソリューション
-
[Java] jdk1.7 trustAnchors パラメータは空であってはならない
-
svn: 接続から読み取ることができません。リモートホストが既存の接続を強制的に閉じました。
-
Javaで未処理の例外が発生する理由
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
Java の例外解決。コンストラクタの呼び出しはコンストラクタ内の最初のステートメントでなければならない
-
環境変数JAVA_HOME(値xxx)が有効なJVMのインストール先を指していません。
-
無効なカラム名
-
エラー コンストラクタ worker(int, String, float) は未定義です。
-
HttpServletRequest型ではgetServletContext()メソッドは未定義です。
-
未処理の例外:java.text.ParseException
-
既に使用されているアドレス:JVM_Bind (ポート競合)
-
中に内部エラーが発生しました。「pro-test 用のディスクリプタをロードしています。
-
JIRA REST API 呼び出し方法
-
トークンに関する構文エラー、代わりに AnnotationName が期待される 構文エラー