JNI 共有ライブラリの読み込みに失敗しました [修正]

JNI 共有ライブラリの読み込みに失敗しました [修正]

Windows 11 または Windows 10 コンピューターで Eclipse または Spring Tool Suite (STS)、KNIME、Dbeaver などの他のソフトウェアを開こうとするか起動しようとすると、 Failed to load the JNI shared library というエラーが表示される場合があります。この投稿では、影響を受ける PC ユーザーがシステムの問題を解決するのに役立つエラーに適用可能な修正を提供します。

Javaの共有ライブラリとは何ですか?

Java では、共有ライブラリは複数のアプリケーションで使用されるファイルです。各共有ライブラリは、シンボリック名、Java クラスパス、および Java Native Interface (JNI) ライブラリをロードするためのネイティブ パスで構成されます。通常、共有ライブラリを使用すると、システム上の重複するライブラリ ファイルの数を減らすことができます。

通常、エラー メッセージのスニペットは次のようになります。

JNI共有ライブラリ「C:/JDK/bin/client/jvm.dll」のロードに失敗しました`

このエラーに遭遇した PC ユーザーは、システムにインストールした後、ソフトウェアを実行するとすぐに問題が発生することが多いと報告しました。通常、ソフトウェアはその後終了します。このエラーは、ソフトウェアに必要な Java Native Interface (JNI) ライブラリが見つからないか、ロードできないことを示しています。このエラーは、次の一般的な理由のいずれかによって頻繁にトリガーされることが知られています。

  • 問題のあるソフトウェアと Java ランタイムのアーキテクチャ (ビット数) バージョンの不一致。
  • Java がシステムにインストールされていないか、インストールが破損しています。
  • Java の 32 ビット バージョンと 64 ビット バージョンの両方、または問題のあるソフトウェアの複数のバージョンがインストールされています。
  • ソフトウェアは、間違った Java インストール フォルダーを検出したり、指定したりしません。
  • JNI ライブラリが見つからないか、壊れています。
  • システム構成の問題。

JNI共有ライブラリのロードに失敗しました

Windows 11/10 コンピューターで Dbeaver、KNIME、Eclipse、Spring Tool Suite などのソフトウェアを開こうとしたときに、JNI 共有ライブラリの読み込みに失敗した場合は、以下に作成して提示したソリューションが簡単に役立ちます。エラーを修正します。

  1. -clean オプションを指定してソフトウェアを起動します
  2. ソフトウェアを編集します。iniファイル
  3. ソフトウェアと Java のバージョンが一致していることを確認してください
  4. Java パス変数を削除する
  5. ソフトウェアを再インストールします。

これらの修正がどのように適用されるか見てみましょう。続行する前に、システムでエラーをスローしているソフトウェアに応じて、ソフトウェアの最新バージョン/ビルドを実行していることを確認してから、問題が解決されているかどうかを確認してください。同様に、システム ライブラリ (これには Net Framework および Visual C++ 再頒布可能パッケージが含まれます) を更新し、ドライバーを更新してみてください。

1] -clean オプションを指定してソフトウェアを起動します

ソフトウェアを正常に起動し、Windows 11/10 コンピュータで JNI 共有ライブラリの読み込みに失敗しましたというエラーがスローされた場合は、オプションを使用してソフトウェアを起動してみてください。これにより、ソフトウェア構成がリセットされます-clean。これを行うには、コマンド プロンプトを開き、ソフトウェア インストール ディレクトリに移動します。

2]ソフトウェアを編集します。iniファイル

この修正では、問題のあるソフトウェアを編集する必要があります。ini ファイルを参照して、ソフトウェアが正しい Java インストールを指していること、ソフトウェアが正しい Java バージョンを使用するように構成されていること、および Java 実行可能ファイルがシステム パスにあることを確認します。このタスクを実行するには、次の手順に従います。

  • ファイル エクスプローラーを開きます。
  • C:\ ドライブで、Java Development Kit のインストール ディレクトリに移動します。
  • その場所で、jrex.x.xx > binに移動し、javaw.exe ファイルを選択します。xxxx プレースホルダーは、インストールした Java のバージョンを表します。
  • ここで、Alt + Dキーの組み合わせを押して、ブレッドクラム ナビゲーションを変更し、アドレス バーを強調表示します。
  • CTRL+Cを押して、完全なファイル パスをクリップボードにコピーします。または、Windows 11 では、exe ファイルを右クリックし、コンテキスト メニューから [パスとしてコピー] を選択します。
  • 次に、問題のあるソフトウェアのインストール フォルダーに移動します。ソフトウェアのショートカットを右クリックして、コンテキスト メニューから [ファイルの場所を開く] オプションを選択できます。
  • その場所で、ソフトウェアの ini ファイル (eclipse.ini など) を右クリックし、メモ帳で開くことを選択します。
  • ここで、必ずファイルの先頭に移動して、以下の行を貼り付けてください。path\to プレースホルダーを、ファイル エクスプローラーのアドレス バーからコピーしたファイル パスに置き換えます。

-vm
C:\path\to\64bit\java\bin\javaw.exe

  • ファイルを保存して終了します。

ここで、プログラムを再起動して、エラーが再発するかどうかを確認します。その場合は、次の修正に進みます。

3]ソフトウェアとJavaのバージョンが一致していることを確認してください

この修正では、問題のあるソフトウェアの 64 ビット バージョンを使用している場合は、64 ビット バージョンの Java ランタイムもインストールする必要があります。同様に、32 ビット版を使用する場合も同じことを行う必要があります。その場合は、Java をアンインストールしてから、システムのソフトウェア ビット数に一致する正しい Java ビット数バージョンをダウンロード/インストールできます。

4] Javaパス変数を削除する

コンピューターに 32 ビット バージョンと 64 ビット バージョンの両方の Java がインストールされている場合、エラーをスローするソフトウェアは、使用する適切な Java バージョンを判断できない場合があります。たとえば、64 ビット バージョンのソフトウェアが 32 ビット バージョンの Java を使用しようとすると、エラーが発生します。この場合、問題を解決するには、Java の 1 つのバージョンをアンインストールする代わりに、次の手順に従ってその Path 変数を削除するだけです。

  • Windows キー + Rを押して、[実行] ダイアログを呼び出します。
  • [ファイル名を指定して実行] ダイアログ ボックスで、sysdm.cpl と入力し、Enter キーを押して [システムのプロパティ] を開きます。
  • [詳細]タブをクリックします。
  • [詳細設定] タブの右下にある[環境変数]ボタンをクリックします。
  • [ユーザー変数] セクションに、すべてのユーザー変数のリストが表示されます。
  • [システム変数]または[ユーザー変数]セクションの[パス変数]をクリックします。
  • 下の[編集]ボタンをクリックします。
  • (インストールされている問題のあるソフトウェアのバージョンと一致しない) Java フォルダーのパスを見つけて選択し、左側のメニューから[削除]を選択します。

プログラムを再度開いて、正しく動作するかどうかを確認してください。そうでない場合は、次の修正に進みます。

5]ソフトウェアを再インストールする

ソフトウェアをアンインストールしてから、最新バージョンのソフトウェアをダウンロードして、Windows 11/10 コンピュータにインストールできます。このアクションで問題が解決する可能性が高くなります。

この投稿がお役に立てば幸いです。

JNI の目的は何ですか?

JNI ライブラリーを使用すると、プログラマーはネイティブ・メソッドを作成して、アプリケーションを完全に Java プログラミング言語で作成できない状況に対処できます。たとえば、標準 Java クラス ライブラリがプラットフォーム固有の機能やプログラム ライブラリをサポートしていない場合に使用できます。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です