Play frameworkでdistしたときにできる起動スクリプトのWindows版
最近Play frameworkをいじってます。
"play"コマンドの中には作成したアプリを、実行に必要な資材だけをまとめたアーカイブを作成してくれる"dist"タスクがあります。
全てjarにまとめてくれる上にサーバの起動スクリプトまではき出してくれるのですが、この起動スクリプトがLinux/Mac用で、Windows用のものがなかったので作成しました。
以下のコードを"start.bat"という名前で、Linux/Mac用のスクリプトと同じ場所に設置します。
注意点としては、起動スクリプトやアプリのjarのパスにスペースが含まれているとうまく起動できません。
もう少しどうにかすればできるかもしれませんが、ちょっとわかりませんでした。
できたかたは是非コメントください。
また起動したときに下記のようなエラーメッセージが表示される場合があります。
Error: missing `server' JVM at `C:\Program Files\Java\jre7\bin\server\jvm.dll'.
Please install or use the JRE or JDK that contains these missing components.
調べたところ、"C:\WINDOWS\system32にあるjava.exeが実行されている"という情報があったので、環境変数PATHを変更したんですがダメでした。
おかしーなーと思って"C:\Program Files\Java\jre7\bin"の中を見ると"server"フォルダがない・・・。
(なんでだろう?)
さらに調べてみると、どうやら"C:\Program Files\Java\jre7\bin\client"の内容がserverフォルダと同じなので、自分でフォルダ作ってclientフォルダの内容をコピーすれば大丈夫のようです。
やってみたところ、うまくいきました。
以上、備忘録として。
"play"コマンドの中には作成したアプリを、実行に必要な資材だけをまとめたアーカイブを作成してくれる"dist"タスクがあります。
全てjarにまとめてくれる上にサーバの起動スクリプトまではき出してくれるのですが、この起動スクリプトがLinux/Mac用で、Windows用のものがなかったので作成しました。
以下のコードを"start.bat"という名前で、Linux/Mac用のスクリプトと同じ場所に設置します。
注意点としては、起動スクリプトやアプリのjarのパスにスペースが含まれているとうまく起動できません。
もう少しどうにかすればできるかもしれませんが、ちょっとわかりませんでした。
できたかたは是非コメントください。
また起動したときに下記のようなエラーメッセージが表示される場合があります。
Error: missing `server' JVM at `C:\Program Files\Java\jre7\bin\server\jvm.dll'.
Please install or use the JRE or JDK that contains these missing components.
調べたところ、"C:\WINDOWS\system32にあるjava.exeが実行されている"という情報があったので、環境変数PATHを変更したんですがダメでした。
おかしーなーと思って"C:\Program Files\Java\jre7\bin"の中を見ると"server"フォルダがない・・・。
(なんでだろう?)
さらに調べてみると、どうやら"C:\Program Files\Java\jre7\bin\client"の内容がserverフォルダと同じなので、自分でフォルダ作ってclientフォルダの内容をコピーすれば大丈夫のようです。
やってみたところ、うまくいきました。
以上、備忘録として。