• ベストアンサー

jarファイルをダブルクリックで実行

jarファイルをコマンドプロンプトから実行することは可能なのですが ダブルクリックをすると「could not find class.program will exit」という メッセージが出て実行できません。 自分の作ったファイルが悪いのかと思い http://cafe.justsystem.co.jp/Tips/javaapp/helloworldicojar/#execfail で紹介されているHelloWorld.jarもダブルクリックでは実行することが出来ませんでした。 ダブルクリックで実行するためには何か特別な設定をする必要があるのでしょうか? 自分なりに過去ログを見たのですがわからないのでよろしくお願いします。

  • Java
  • 回答数4
  • ありがとう数8

質問者が選んだベストアンサー

  • ベストアンサー
  • kacchann
  • ベストアンサー率58% (347/594)
回答No.4

>jarファイルの関連付けは「Java(TM) 2 Platform Standard Edition binary」となっています もっと詳細に調べる。 「フォルダオプション」 ↓ 「ファイルの種類」 ↓ 拡張子「JAR」を選択した状態で「詳細設定」 ↓ アクション「open」を「編集」 ↓ 「アクションを実行するアプリケーション」 のところに書かれている"コマンド"が 適切かどうかチェックする。 それを#1さんのリンク先の内容と照らし合わせる。

ebinamori
質問者

お礼

アドバイスありがとうございます。 解決することが出来ました。大変助かりました。

その他の回答 (3)

  • yusukey
  • ベストアンサー率56% (17/30)
回答No.3

そうですね。レジストリとかって Java 屋からすればあまり馴染みのないものですから面倒でしたらOSからの再インストールもありかもしれません。 しかし、jarファイルのダブルクリックによる起動って本当に重要でしょうか? もしかすると Java Web Start の方が良いかもしれません。自動的に更新できるし、綺麗なアイコンも付けられるし。

ebinamori
質問者

お礼

度々アドバイスありがとうございます。 Java屋というかただの初心者です。w 一応解決したのですが javaアプレットを実行することが出来ないので やはり入れなおそうかと思っています。

  • yusukey
  • ベストアンサー率56% (17/30)
回答No.2

Windows で jar ファイルをダブルクリックで起動するには ・jar ファイルのマニフェストにメインクラスが適切に記載されている ・レジストリに javaw と jar ファイルの関連づけが適切にされている といった条件が揃うことが必要です。 マニフェストについては java -jar にで起動できるから問題なさそうですね。 すると後者が怪しいところです。レジストリにどのように登録されているべきかは先のリンク先にありますので確認してみてはいかがでしょうか。 アンインストールができないほどレジストリに不整合が生じているのであれば、正常に起動できる環境とレジストリを見比べてみるのもよいかもしれません。

ebinamori
質問者

お礼

再び回答ありがとうございます。 OSを入れなおして1からやればうまく行きますか? 手に負えなさそうなのでそうしようかと思っています。

  • yusukey
  • ベストアンサー率56% (17/30)
回答No.1

似たような話題がありました。 http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=24020&forum=12&2 解決しないようでしたらお使いの OS 、また java -jar jarファイル名 を実行したときにどのような例外がでるか(または正常に実行できるか)教えてください。

ebinamori
質問者

補足

jarファイルの関連付けは「Java(TM) 2 Platform Standard Edition binary」となっています。 WindowsXp professionalをつかっております。 コマンドプロンプトで[java -jar *.jar]のコマンドを打てば正常に起動,実行できます。 ひとつ自分で原因と考えられる事はJREを何度かインストールとアンインストールを 繰り返しているうちにアンインストールが出来なくなってしまいました。 インストールしてもアンインストールしてからやり直してくださいというメッセージが出ます。 出来ないので強制アンインストールをソフトを使ったのですがやはりアンインストールは出来ませんでした。 回答よろしくお願いします。

関連するQ&A

  • jarが実行できない

    JDKをインストールしていますが、jarファイルをダブルクリックしても Could not find the main class. Program will exit. と表示され実行できません。 コマンドプロンプトでは java -jar Sample.jar で実行できるのですが。 どうすればよいか教えてください。

  • jarファイルをダブルクリックで実行したいのですが

    こんにちは。今、Windows Vistaと、Java SE 6 UPDATE 4でJavaの勉強をしているのですが、以前書籍を読んでjarファイルを作った時は、コマンドラインからしか実行しなかったのですが、どうもダブルクリックでも実行できるような事が各サイトに載っていましたので、あるサイトを参考にHelloWorld.jarというファイルを作ったのですが、コマンドラインからは動作できますが、ダブルクリックしても「このファイルを開けません」というダイアログボックスが出てきたので、「インストールされたプログラムの一覧からプログラムを選択する」でjavaw.exeを選んだりjava.exeを選んだりして実行してみたのですが、コマンドラインが一瞬立ち上がってすぐに消えたり、「Could not find the main class. Program will exit.」というダイアログが出現したりして実行できませんでした。 MANIFEST.MFは、 Manifest-Version: 1.0 Main-Class: HelloWorld と記述してます。 コマンドラインでjarファイルを作った時のコマンドは、 jar cvfm HelloWorld.jar MANIFEST.MF *.class です。 コマンドラインからでは、java -jar HelloWorld.jarで動作しています。 HelloWorld.jar をラカで解凍したら、HelloWorldフォルダ直下に、HelloWorld.classとMainPanel.classとMETA-INFフォルダ、 META-INFフォルダの中にMANIFEST.MFがあり、中身は、 Manifest-Version: 1.0 Created-By: 1.6.0_04 (Sun Microsystems Inc.) Main-Class: HelloWorld  となっていました。 もし悪い所がございましたら、アドバイスの方よろしくお願いいたします。

    • ベストアンサー
    • Java
  • JARファイルのダブルクリック実行について

    JARファイルをダブルクリックして実行できるプログラムを作成して、windows2000の環境で使用しています。 このJARファイルをwindowsXPの環境に移行したところ、実行できなくなってしまいました。 「Could not find the main class. Program will exit!」というエラーメッセージがでます。 ちなみに、JREはインストール済みで、javac,javaのコマンドは実行できます。 よろしくお願いします。

    • ベストアンサー
    • Java
  • jarダブルクリックで実行できません

    自作のjarファイルだけがダブルクリックで実行できません。長い時間はまっております。お助けください。 javaアプリを配布するためにexeを作ろうと、まずjarファイルを作ってみました。 どんな状況かと申しますと ・他の方が作られたjarファイルはダブルクリックで実行可能です。 ・自作のjarファイルはダブルクリックで実行できません。 「could not find the main class: ○○ Program will exit」 ・自作のjarファイルはコマンドプロンプトの 「java -jar ○○.jar」で実行されます。 そこでお聞きしたいのが下記URLのゲームに関してです。 http://www.ipl.co.jp/item/JavaShootingGame.html 問題点を探るために、まず公開されているソースをコンパイルし、jarを生成しました。 マニフェストファイルには「Main-Class: Game」を改行付きで加え自作しました。 上記の自作jarのようにダブルクリックで実行できず、 コマンドで実行できます。 次に、公開されているjarを「xvf」コマンドで解凍するとdatファイルと 色々書かれたMANIFEST、 classファイルがでてきました。 ためしに、datを削除し、MANIFESTを自作のものに上書きしました。 これで上記と同条件のはずですが、これでつくったjarファイルは なんとダブルクリックで実行できます。 Classファイルを逆コンパイルしてソースを比べる。 Eclipseで生成する。 マニフェストにClass-Pathをあらゆるところに通してみる。 以上失敗しました。 この2週間こればかりで、正直気がめいりそうです。 対処法も尽きてしまいました。 どうかお助けください。

    • ベストアンサー
    • Java
  • jarファイルが開けない

    PHS1.20.2というゲームのためのツールを起動するために、PHS1.20.2.jarをダブルクリックしたところ、 Could not find the main class: PtGuiStart. Program will exit. というポップアップが出て、起動できません。 Javaが正常に動いていないのかと思いJavaの公式で確認してもそんなことはありませんでした。 OSはWindows Vistaです。 解決方法をご存知の方、よろしくお願いします!

  • windowsのタスクスケジューラを使用して、

    windowsのタスクスケジューラを使用して、 jarを実行したいのですが、 Could not find the main class C:\~パス~\test.jar.Program will exit. とエラーが出てしまい実行できません。 マニフェストファイルへの記述も行いましたし、 普通にダブルクリックでの起動は出来ています。 いったい何がいけないのでしょうか?

    • ベストアンサー
    • Java
  • JARファイルをEclipseを使って作成したのですが、ダブルクリック

    JARファイルをEclipseを使って作成したのですが、ダブルクリックで起動することができません。デスクトップにJARファイルを保存したので、コマンドプロンプトでデスクトップまで階層を移動して"java -jar Sample.jar"と入力した時は問題なく起動できたのですが、ファイル自体をダブルクリックで起動がどうしてもできません。初歩的なことかと思いますが、何卒よろしくお願いいたします。

    • ベストアンサー
    • Java
  • JARファイルをEclipseを使って作成したのですが、ダブルクリック

    JARファイルをEclipseを使って作成したのですが、ダブルクリックで起動することができません。デスクトップにJARファイルを保存したので、コマンドプロンプトでデスクトップまで階層を移動して"java -jar Sample.jar"と入力した時は問題なく起動できたのですが、ファイル自体をダブルクリックで起動がどうしてもできません。 初歩的なことかと思いますが、何卒よろしくお願いいたします。

    • ベストアンサー
    • Java
  • jarファイルの作成

    はじめまして。 さっそく質問させていただきます。 Javaでswingを使用してGUIアプリケーションを作成しました。 .exeファイルのようにダブルクリックで起動できるように、jarファイルを作成したのですが、開こうとしてファイルをダブルクリックすると、「failed to load Main-Class manifest attribute from (C:からjarファイルまでの階層)」というエラーがでて実行することができません。 階層は C:\a\b フォルダ b の中に「c.class」「d.class」「MANIFEST.MF」の3つがあります。 c.classがmainメソッドを持っているのでマニフェストファイルには、「Main-Class: c」と書き込み、コマンドプロンプトから「jar cvfm c.jar MANIFEST.MF *.class」と入力、jarファイルが作成されたのですが、ダブルクリックすると上記のエラーがでてしまいます。 どのようにすればエラーなく実行することができるでしょうか? 開発環境は、Windows XP SP3, jdk1.6.0_16, 統合開発環境は使用していません。 よろしくお願いします。

    • ベストアンサー
    • Java
  • アプリケーションをダブルクリックで起動できるjarファイル

    jarファイルを作成すると、ほとんどのアプリケーションはダブルクリックで実行できるのですが、ひとつだけダブルクリックしても実行できないものがあります。どうしてなんでしょうか?誰か、同じ経験をされた方、理由を知っている方は、ご回答お願いします。 jar cvfm <jarファイル名> <マニフェストファイル名> <クラスファイル名> で作成してます。クラスファイルは内部クラスも含めてます。 よろしくお願いします。

    • ベストアンサー
    • Java