2015年02月07日

ECLIPSE SWT javaで清く正しく動く実行形式EXEファイルの作り方

javaで六曜を出力するプログラムをつくりました。

西暦と六曜を対比したテーブルをどーんとファイル出力したり
 未来の六曜に思いを馳せたり
  西暦から旧暦へ変換する過程の複雑さに涙がちょちょぎれたり
  

色々な事ができるので、お試しいただければと。

で、コレを公開できたのが、ベクター上なんですね。
http://www.vector.co.jp/soft/winnt/personal/se509188.html

今まで、色々なものをダウンロードさせてもらってきましたが、
まさか、自分が登録する側になるとは思ってませんでした。
いやぁ、世の中、どうなるものか分かりませんね。

さくっと、ダウンロードできるので、
(32bit JREのインストールは必要です)

試して、
「ここは、良いねー」とか
 「ここは、なんとかして欲しい」とか
  「・・ダメじゃね?」(あ、これは凹む)

ベクター上にコメント、是非ください。


で、ここからがECLIPSE、SWTを使ってつくったjavaプログラムを
Windows上で動くEXEにする方法です。


始まりは、ECLIPSE上で、思った通りに動き始めたjavaプログラムを
とりあえず、EXEにしてみたところからです。
(このときは、jsmoothを使ってみた)

案の定、まったく、動きませんでした。はははっ。

ECLIPSEの庇護のもとを離れると、世間の厳しさを知る💦
っつー感じです。

「こりゃ、きちんと、やらにゃダメだね。」
って、ことで、やったことを片っ端から書いていきます。

@ECLIPSE上で発生しているエラー(ワーニングも含む)を取り去る

ECLIPSE上であれば、許容してもらえるものが、外れると
許されなくなるそうな。

僕の場合は、
・static宣言されているクラスをnewしていたり
・型の違う変数同士で、バンバン代入したり
・最初に宣言した変数を使っているつもりで、途中で宣言した
 変数をいつの間にか使っていたり(単なる物忘れ)
などなど大量にワーニングがあったので、ぜーんぶ取っ払いました。

Ajarファイルの出力方法を替える

それでも、

java -jar RokuyoSanpo.jar

こんな感じで、作成したjarファイルを動かすと
全然動かないという事象がでてがっかり⤵です。

なので、jarの作成の仕方を少し変えてみます。

ECLIPSE

エクスポート

実行可能JARファイル

起動構成:QRekiEvDvn-Rokuyosanpo
エクスポート先:C:\pleiades\workspace\RokuyoSanpo.jar
ライブラリー処理:生成されるJARに必須ライブラリーを抽出

完了

ちなみに、使っているECLIPSE環境は
http://mergedoc.sourceforge.jp/
Helios 3.6

BそもそもjavaVM環境は正しかったっけ?

僕は、Windows7の64bit版を使っているので、
JREも、何も疑わずに、64bit版を使っていたわけですが。

jarファイルを動かしてみると

「SWTのライブラリが32bitなのに、64bitで動かそうとしてないか?」
というように読み取れる、英文メッセージが。

うーん。よくわかんないが、やってみっか。
って、ことで、JREを32bit版に入れ替えると、jarは動くように。
そうなると64bit版の出番って・・いつ?

CEXE形式をつくるツールを変えてみた

jsmoothどうも、使い方がよくわからない。
そこで、exewrapというものを使ってみました。
何と言っても、マニュアルが日本語ですからね。

インストールしたexewrap.exeを対象ファイルのある
フォルダにコピっておく。

まず、こんな感じでLOGを出力するタイプをつくってみた
exewrap.exe -g RokuyoSanpo.jar

次に、大体動くようになったので、LOGを出力しないパターンで
exewrap.exe -g -e NOLOG RokuyoSanpo.jar

アイコンも付けてみたり
exewrap.exe -g -i rokuyo.ico -e NOLOG RokuyoSanpo.jar

それから、バージョン情報も入れてみたりして。
これは、使いやすい。
exewrapオススメです。


結論。

ECLIPSE上で、SWTを使ったjavaプログラムが動くように
なったからといって、

すぐ、EXEが動くようになる訳ではない

っつーことが身にしみた、昨今でございます。





banner_03.gif今回、初javaだったので理解できない事だらけでした



posted by ろびんいちごー at 22:45| Comment(0) | TrackBack(0) | 開発(Eclipse/swt/java/javascript/php/HTML) | このブログの読者になる | 更新情報をチェックする
この記事へのコメント
コメントを書く
お名前:

メールアドレス:

ホームページアドレス:

コメント:

※ブログオーナーが承認したコメントのみ表示されます。

この記事へのトラックバック


Powered by Seesaa