- ベストアンサー
Winでコマンドプロンプトを出さずに実行
Windows上でJAVAのGUIを使ったプログラムを作りました。 実行するときは java クラス名 と入力して実行しますが、 せっかく便利なプログラムをJAVAで書いても、常に黒いプロンプト画面が残るのはいやです。 コマンドプロンプト画面を出さずにJAVAのGUIつきのプログラムを実行する方法があったら教えてください。
- みんなの回答 (5)
- 専門家の回答
質問者が選んだベストアンサー
マニフェストファイルを作成して、JARファイル化すれば、 そのファイルをダブルクリックするだけで起動するはずです。 Main-Class の部分が起動するクラス名になります。 また、JARファイルの作成方法についてはDOCを参照してください。 例) Manifest-Version: 1.0 Main-Class: testMain Specification-Title: Application Test Specification-Version: 0.1 Specification-Vendor: Tester
その他の回答 (4)
- jiri_t
- ベストアンサー率25% (1/4)
私もおんなじ事を思った時期があって そのときいいツールを見付けたので御紹介します それはフリーソフトのjcraftというソフトです。 vectorなんかでjava関連のところにあったと思います これならjava本体がどこにあってもOkという凄いものです。 ちょっとヘルプが無く分かりにくいのが難点ですが... 参考になれば幸いです。
お礼
便利なツールがあるんですね。 情報ありがとうございました。
補足読みました。 Cからのキックの仕方は、main()を使うと 必ずコンソールプログラムになってしまう ため、DOSプロンプトが表示されます。 WindowsのGUIアプリケーションからキック した方がいいでしょう。これでウィンドウを 非表示で起動して、WM_CREATEでSysExecuteで Javaプログラムを起動して、その直後に PostQuitMessage(0)を呼び出せばいいはず。 ではでは☆
お礼
CからやるにはGUIを使わないといけないんですね。 そこまでは、、、詳しくないものでできそうにありません。 main()を使うと必ずコンソールになるというのも、初めて気づきました。どおりで、今までかならず黒い画面がでてたわけですね。
- snnk
- ベストアンサー率60% (3/5)
java クラス名 だとコンソール有りでjavaが実行されます。 ですので、 javawコマンドを使用してみてください。 これだとコンソール無しで実行します。 しかし、この場合、javaがハングった場合、 強制終了の必要があるので注意してください。 あとは、cからのキック (この場合起動時の一瞬プロンプトが見えます) で良いでしょうし、 バッチファイルに javaw クラス名と書いて保存し、 プロパティのプログラムの所で、 終了時にウィンドウを閉じるにチェックし、 実行時の大きさを最小化にすると 雰囲気プロンプトが見えなくなります。
お礼
javawというコマンドは初めて使ってみました。 簡単にウインドウがでないようにできるので便利ですね。 ありがとうございます。
バッチファイルか何かを書いて、そのバッチ ファイルのプロパティで、プロンプトを表示 しないという設定はありませんでしたっけ? #後は、Cでウィンドウなしのプログラムを #書いて、Javaプログラムを呼び出したら、 #そのまま終了というものをかいてもいいかも #しれませんね。 ではでは☆
お礼
ありがとうございます。 じつは、、、 >プロンプトを表示 >しないという設定はありませんでしたっけ? それがわからず困っています。Windowsのヘルプを見てもみつからず、、、。 また、Cで単純に #include <stdlib.h> void main(void){ system("java ***"); } としても、ウインドウがでます。うーん、こまりました。もしご存知でしたらよろしくおねがいします。
お礼
今、いろいろ試してみて、試行錯誤の末、やっとこの方法でできました。 Main-Classを指定してJARにするというのがコツなんですね。 自分のプログラムはパッケージなどでディレクトリが分かれてるので、そのディレクトリの指定を壊さないようにJARを作るのが難しかったですが、なんとかできました。 ありがとうございました。