Secure,Crack,Programme.

何かよくわからないもの置き場。競プロとかCTFとかそこらへん?

Mac OS Xでbeatorajaを動かしたい! -JavaFXの設定とか編-

こんにちは。iLiss.です。

Mac OS Xでも、BMSが、したくないですか?

僕はものすごくやりたいです。やりたすぎて....

 

さて、beatoraja-config.commandを起動するまでに一騒動ありまして...

この記事はそのときやったことをざっと書き起こしたものです 情弱の備忘録みたいなものなので、こんなところで突っかかってたんかと笑い物にしてくれればいいと思います

 

 

1. 何があったか

f:id:iLiss557_Ort:20200424185258p:plain

カス

 

beatorajaインストした!beatoraja-config.command叩くぞ!と叩いたらこんなもんが。

要はJavaFXくんを読み込んでくれていないらしい。

いりすさんは情弱なので何が悪いか分からなかったので、とりあえずJavaFXを入れてみることにした

 

2. JavaFXを入れる

JDKhttps://www.oracle.com/java/technologies/javase-downloads.html

OpenJDK : https://openjdk.java.net/

OpenJFX : https://openjfx.io/

 

まずはJDKを入れる。JDKとOpenJDK、好きな方を選べ。

正直これいる?みたいな気持ちがあるが、入れておくに越したことはない。

JDKを入れると、  /Library/Java/JavaVirtualMachines 下にJDKがインストールされているはずなので確認する。OpenJDKの場合も同じようなファイル作ってその中に打ち込んでおくのが安全だと思います

 

次にOpenJFXをインストールして同じファイルの中にぶち込む。

現代のJDKはJFXが内蔵されていないらしく、別の場所から取ってこないといけない

面倒なら内蔵されてるJDK 10以前を取ってくるとよい

 

3. 動かない

f:id:iLiss557_Ort:20200424185258p:plain

全く同じ状況になった

何も解決しない。は? :korosuzo:

とりあえず動かし方を検索してみる。流石にこれで人に聞くのは...

 

よさそうな記事があったので参考にした : 


この記事を読んでから気づいた、JavaFXのPATHをまだ通してない

そりゃ動かないに決まってるだろ パソコン初心者か?

とはいえこれで原因は大体わかったので、JavaFXをしっかり読み込んでもらうために設定をする

 

4. beatoraja-config.commandをいじる

exec java -Xms1g -Xmx4g -cp beatoraja.jar:ir/* bms.player.beatoraja.MainLoader

 多分beatoraja-config.commandの実行部分はこうなってるはず このままだとJavaFXを読み込んでくれていないので、ここをいじる

まずは --module-path を使ってJavaFXのPATHを通す これは /Library/Java/JavaVirtualMachines/javafx-sdk-(version)/lib を指定する

パソコンに詳しい人間は.bash_profileを使って、

export PATH_TO_FX='/Library/Java/JavaVirtualMachines/javafx-sdk-(version)/lib'

などとしてもいいが、実行行の前に

source ~/.bash_profile

.bash_profileを参照するようにbeatoraja-config.commandくんに要求しておくこと

参考 : 

あとはモジュールを突っ込んでおしまい

多分こんな感じになると思います

source ~/.bash_profile
exec java -Xms1g -Xmx4g --module-path $PATH_TO_FX --add-modules=javafx.controls,javafx.fxml -cp beatoraja.jar:ir/* bms.player.beatoraja.MainLoader

.bash_profileを使わないとこんな感じ :

exec java -Xms1g -Xmx4g --module-path '/Library/Java/JavaVirtualMachines/javafx-sdk-(version)/lib' --add-modules=javafx.controls,javafx.fxml -cp beatoraja.jar:ir/* bms.player.beatoraja.MainLoader

5.  さいごに

.bash_profileっていつでも参照してくれるわけじゃないんすね〜とか色々気づいたことはあった やっぱりここら辺はちゃんと知っておくべきだね...

同じようなところでつまづいている方がいらっしゃったら、参考にしていただければと思います

 

それでは。