1. ホーム
  2. Exception Solutions

警告:不正な反射アクセス操作が発生しました。

2022-02-20 07:11:49

この記事の目次

I. 背景説明

II. エラーメッセージ

III. エラー報告の理由

IV. 解決方法

4.1 解決策1:jvmオプションの設定情報を追加する

4.2 シナリオ 2: jdk バージョンを下げる


I. 背景説明

この会社のプロジェクトでは、最近マイクロサービス化を進めていて、ビジネスの各パーツが別々のサービスを構築し、サービス同士がお互いを呼び合うというものです。

プロジェクトの背景 JDK (9) + Spring Boot (v2.1.5.RELEASE)

II. エラーメッセージ

下図のように、バーの操作には影響しませんが、このアラームメッセージがあると常に目障りな感じがするので、心理的に解決した方が良いでしょう。

警告:不正な反射アクセス操作が発生しました
警告: org.apache.ibatis.reflection.Reflector (file:/F:/maven_repostitory/IdeaRepository/org/mybatis/ mybatis/3.4.4/mybatis-3.4.4.jar) によるメソッド java.lang.Object.finalize() への違法な反射アクセスです。
警告: org.apache.ibatis.reflection.Reflector のメンテナにこの件を報告することを検討してください。
警告: --illegal-access=warn を使用すると、さらに不正な反射アクセス操作に対する警告を有効にすることができます。
警告:将来のリリースでは、すべての不正なアクセス操作が拒否される予定です。

III. エラー報告の理由

今のところわかっているのは、JDKのバージョンが高すぎるということと、原因はもっと先にあり、まだ調査できていないことです。

IV. 解決方法

様々な解決策がありますが、私たちは優先的に解決策1をお勧めします。理由は聞かないでください、神様が選んだ方法なのです

4.1 シナリオ1:jvmオプションの設定情報を追加する

騒がないで、新しいバージョンのアイデアを使ってから、中国語のプラグインを追加しました

ステップ1:編集設定の検索

 ステップ2:仮想マシンオプションの追加 追加 --add-opens java.base/java.lang=ALL-UNNAMED を設定します。

ステップ3:忘れずに追加して、「適用」と「OK」をクリックします。これで設定が完了し、プロジェクトを再起動すると、奇跡的に問題が解決しました。

4.2 オプション 2: jdk のバージョンを下げる

パスのオプションは ファイル --> プロジェクト構造 --> プロジェクトSDKとプロジェクト言語レベルを変更します。 最後に、「適用」と「OK」をクリックするのを忘れないでください。

問題が解決した場合は、返信を残してください

終了!