LoginSignup
0
1

More than 5 years have passed since last update.

[解決:変更可能だった] Spring Bootのconfファイルでコンテキスト名を変更するのは無理そう

Last updated at Posted at 2017-03-12

追記

実際にserviceから呼ばれるときにはちゃんと動いた。VPSにて確認。
ローカルで確認したい場合は単純に以下のようにすればよかった。

sh myapp.jar

confファイル自体はシンボリックリンクになっていても問題なかった。
まあjarの先頭にフツーにシェルスクリプト書いてあるし、シェルから起動すれば良いということに何故すぐに気付かなかったのか。。


Spring Bootは、デフォルトでjarと同じ場所にある{jarName}.confファイルを読み込んでくれる。
ここからJAVA_OPTSも渡せるので、コンテキスト名変更の設定を渡そうとしたのだが、上手くいかなかった。
1.3.0でダメだったので、今の最新安定版の1.5.2でも試したがダメ。

ちなみに、コンテキスト名はserver.context-pathのキーで変えられる。/始まりで/で終わらない文字列を指定すること。 e.g. /myapp

jarNameをmyapp-1.0.0.jarとした時の、反映させようとしたconfは以下。

myapp-1.0.0.conf
JAVA_OPTS="-Dserver.context-path=/myapp"

これが出来ると、VPS上でSpring Bootのjarの場所にconfファイルを置くだけでコンテキスト名が変更出来て便利なのだが。service化はjarにシンボリックリンク貼るだけなので。

上手くいくパターン

当然だが、application.propertiesや、起動時に-D--で指定すると問題ない。

application.properties
server.context-path=/myapp

java -jar -Dserver.context-path=/myapp myapp.jar
java -jar myapp.jar --server.context-path=/myapp

参考

0
1
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1