2011-09-06 21 views
6

jdk7を使用してjarファイルを作成しました。私はそれを実行しようとしたが、エラーが続いた。それはjdk7のjre6ではなくjre6を指していたことが判明しました。だから、私はそれを変更するには、次のコマンドを使用javaはcmdからjarを実行できますが、ダブルクリックすると表示されません。

FTYPE jarファイル= "C:\ JREの\ビンの\ javaw.exeのパス"

はその後、私は倍増してみました* "%1" %-jar私のjarファイルをもう一度クリックしますが、それを開くためのプログラムを選択するように要求するウィンドウが表示されました。上記と同じjavaw.exeファイルを選択すると、実行されますが、何もせずにただちに終了します。私はjava -jar file.jarコマンドを実行することでcmdでうまく実行できます。私はさらに.jarレジストリキーを削除しようとしましたが、それは私に、開こうとするプログラムを選択するように頼んだところに戻ってきました。私はWindows 7を実行している場合は究極の問題です。

EDIT: レジストリには、OpenWithList、OpenWithProgids、およびUserChoiceの3つのサブキーがあります。 UserChoice以外のすべてのデフォルトを上記のパスに変更しました。私はそれをregeditから編集できません。 jarファイルを削除してjarファイルを実行しようとすると、ウィンドウで開くプログラムを選択して開きます。何らかの理由で他のレジストリキーを無視します。

答えて

0

解決策がどれもうまくいかなかった理由はわかりませんが、jre7を再インストールしたところ、今すぐ動作します。

2

Windowsがプログラムを実行するかどうかを尋ねると、コマンドラインに必要な-jar引数が挿入されません。

exeを実行するように求めている場合は、JREが何らかの形で.jar拡張子に関連付けられていないことを意味します。 .jarファイルレジストリエントリを変更して、c:\path_to_jre\bin\javaw -jar %1が動作するようにする必要があります。
これは、以前はFile Explorer > Tools > Folder Options > File Typesになっていました。

次に、そこに.jarを探します。実行可能な実行可能ファイルとコマンドライン引数を示すテキストフィールドがあります。それはあなたが変更したいものです。レジストリエディタでも行うことができますが、私はHKEYの可変パスを忘れてしまいました。私は、このKBAが役立つと確信している:

support_microsoft_kb_950505

+1

関連付けはまさにjhlu87が示している 'ftype'コマンドがやっていることです。 –

0

は、それが簡単にCLASSPATH環境変数を変更することにより、JDK7 rnewあなたにあなたのJavaのバージョンを変更することはありませんか?ファイルタイプjarfileが実際に

assoc .jar 

を使用して* .jar拡張子に登録されている場合はどのようにhere

+0

私のクラスパスは正しいパスに設定されています – jhlu87

1

チェックしてくださいの.jarがjarファイルにリンクされていないように思えます。

+0

そう、私はそれをしました。それは返されます.jar = jarfile – jhlu87

11

OK、私はこの回答をどこか別のところで見つけましたが、もう一度この問題に遭遇しました。
ソリューションは...

  1. アップregedit.exeを
  2. 開く "jre6" を検索するか、このどちらかに従ってくださいです:javawをのディレクトリに
    HKLM->SOFTWARE->Classes->jarfile->shell->open->command
  3. チェンジ・データ・フィールド.exeあなたのJDKディレクトリにあるファイル。
  4. 神の愛のために、奇妙なものを置くことを忘れないでください[-jar "%1" %*]部品の最後に。
  5. オススメのオススメをお楽しみください。

これは、一部の人に少し時間を節約することを望みます。

Chrome用のJRE6プラグインをインストールしたときにこれが起こったのですが、他のバージョンのJREをインストールするとこの問題が発生する可能性があります。

+0

私は正しいキー(Win7)HKEY_CURRENT_USER \ Software \ Classes \ jar_auto_file \ shell \ open \ command "グローバル"関連付けが完全に失われたと私は "OpenWith" –

4

私はREG_SZを変更

をregeditとに行くことによって、それを固定し、育てJREの検索...

HKEY_CURRENT_USER /ソフトウェア/クラス/アプリケーション/ javaw.exeの/シェル/オープン/コマンド

から: "C:\プログラムファイル(x86の)\ Javaの\ jre7ビンの\ javaw.exeの\" "%1" へ

ます。「C:\ Program Files(x86の)\ Javaの\ jre7 \ bin \ javaw.exe "-jar"%1 "%*

+0

editetすべてのパスとそれを助けました –