2

アプリケーションのセットアップに jre ファイルを埋め込みました。java.exe を使用して、Java 固有のタスクを実行できます。

そして、jarsigner.exe を使用したいのですが、jarsigner を起動すると、いくつかのレジストリ キーがチェックされ、(jre セットアップによって jre がインストールされていないため) それらが見つからず、エラーが発生します。

jarsigner への java.exe パスを指定するにはどうすればよいですか

レジストリをチェックする代わりに、私が指摘したjava.exeを使用する必要があります。

エラーログ:

レジストリ キー 'Software\JavaSoft\Java Runtime Environment を開くときにエラーが発生しました

エラー: java.dll が見つかりませんでした

エラー: Java SE ランタイム環境が見つかりませんでした

JAVA_HOME dirを定義するjarsignerの追加パラメータ、またはjava.exeが存在する場所を定義するその他のパラメータがあるのだろうか。

4

3 に答える 3

2

特定のコマンドライン パラメータはありませんが、 を呼び出すときに、アプリケーションにバンドルされている目的の JRE を指すようにプロパティをjarsigner設定できます。java.home

たとえば、次のjarsignerいずれかでを呼び出すことができます。

  • ProcessBuilderjava.homeプロパティを設定し、
  • または、環境変数Runtime.exec()の設定を許可するバリアント、envp
  • またはバッチ/シェル スクリプトを作成し、そのJAVA_HOME中にプロパティを設定します。
于 2012-06-12T07:57:05.757 に答える
0

Javaから盗まれましたレジストリ キーを開くときにエラーが発生しました

ある場合は削除します。

32ビットマシン上

Windows\System32 フォルダーの java.exe、javaw.exe、および javaws.exe

64ビットマシン上

Windows\SysWOW64 から削除します。

于 2012-06-12T07:10:52.790 に答える