サーバー側システムとして配布する Java アプリケーションを実行しています。私はランチャーを作成しようとしています (「書き込み」はここではやや誇張されています。基本的には、Windows のプロセス エクスプローラーで目的の名前を取得できるように、Java.exe ファイルをコピーするだけです)。この exe は、アプリケーション ファイル ツリーの bin/ ディレクトリにあります。
現在、ファイル ツリーには jre/ ディレクトリもあり、Java.exe が実際に存在する場所です (製品は Java 環境と共に出荷されます)。\jre\jre1.6.0_21\bin にある Java.exe をランチャーとして使用する場合、またはこのディレクトリに作成したコピー (この実行ファイルを「Orange.exe」と呼びます) を配置すると、問題なく動作します。 . しかし、'Orange.exe' を bin\ ディレクトリに置くと、次のエラーが発生します。
Error: no 'server' JVM at 'C:\Program Files\Java\jre6\bin\server\jvm.dll'
ここで何が起こっているのか理解できたと思います。jre ディレクトリにあるサーバー バージョンの jvm.dll ファイルを使用したいと考えています。問題は、アプリケーション パスの jre\jre1.6.0_21 ディレクトリに表示されない理由がわかりません。JAVA_HOME 環境変数をこの場所に設定しました。システム全体で予想される別の場所にデフォルト設定されているようです。
アプリケーションが提供するJava環境ディレクトリに表示されるように、これを変更する方法を知っている人はいますか? 理想的には、バッチ ファイルを使用してパラメーターを指定してこのアプリケーションを呼び出す必要があるため、これは環境変数になります。