AMATERUという占星術ソフトはそれなりに整っていて無難なソフトなのですが、 Java1.6で書かれているソフトなので最近のMacでは動かなくなってしまった。 昔は簡単に動かせたのだが、Javaのバージョンアップおよびセキュリティ的な問題で動かなくなってしまったのですよね。
ただGPLである故ソースがダウンロードできるので最新版でコンパイルし直してみることにする。今後また動かなくなることもありそうだし、ビルドできるようにしておけば自分で機能拡張もできるしね。
NetBeans
とりあえずAMATERUはNetBeansProject形式のようなのでNetBeansを入れる。
ついうっかりJDK入れ忘れてプロジェクトが読めなくて右往左往するが、JDK入れたら普通にプロジェクト読めた。
基本的にlibフォルダ:サードパーティー
NetBeansフォルダ:自分でビルドしたファイル
っぽい。
パス修正
あとはプロジェクトに保存されているパスがwindowsのC:になっているので、パッケージを読み込んでエラーになっているライブラリのパスを直しつつ一つずつパッケージをビルドしていく。
ビルドバージョンは最新のJDK14で。
AstroFont.jarというものが同梱されていなかったのでとりあえずインストーラに含まれているものから持ってきておく。
ただなぜかstarbaseプロジェクトがlibを読んでいるのに、libプロジェクトがstarbaseプロジェクトをimportしているという相互参照が。
なんでライブラリ側から本体読んでいるんだ、と思いつつimport文をコメントアウトしたら普通にビルド通った。
とりあえずこれで全部ビルドできたので起動してみる。 AMATERU.propertiesというファイルに記載されているパスが間違っててエラー。 ここも直したらとりあえず起動を確認。
スクリプト作成
あとはホームディレクトリでディレクトリ作って、普段インストーラで展開されているような感じでjarを配置。 ただjarをダブルクリックだとなぜか起動してくれないので、commandファイルを作ってjava -jarでコマンドラインからjarを起動するスクリプトを作成。 エフェメリスファイルも本来のインストーラのものを使って無事に起動を確認。 うちはPHPエンジニアなのでJavaは詳しくないけど、とりあえず動いてよかったよかった。
あとは絶対パスに依存しないようにしておけば再配布できるはず。
相談乗ります。
とりあえずこのソースじゃ普通に大澤さんところのパッケージからダウンロードしても絶対に起動しないはずなので、もしMacにAMATERUを入れたいと言う方がいましたらご連絡ください。 有償にはなりますが、相談に乗ります。
というかこいつをラップしてオリジナルソフトにしちゃうのもいいのかな。 ちょっと後々考えよう。