さて、私は春のブートのapplication.yml設定で奇妙なバグに気付きました。 スプリングブートのapplication.yml設定が盗んだ
私は、通常のapplication.ymlを持っており、これは、develのモードで正常に動作myVal@value( "$ {path.to.value}") プライベート型としての私の値を取るとき、私
java -Xms2024m -Xmx6564m -Dlog4j.configuration=/path/to/log4j2.xml -Dspring.profiles.active=dev -Dspring.config.location=/path/to/application.yml -jar myApp.jar
設定は春、 によってさらに悪化読まれていない、私のパラメータ:しかし、私は、サーバーにjarファイルをアップロードし、このようにそれを実行すると、DIR私のsrc /メイン/ resを内側に私の設定を持っています私の前の設定で設定するのは難しいようですコンパイル時にコードされる。したがって、アプリケーションは失敗せず、コンパイル時に同じディレクトリにあるapplication.ymlのパラメータで実行されます。これは、application.ymlが実際に設定ファイルとして意図されている場合、非常に危険なバグのようです私はすべてを誤解しているわけではありません。
私はどのようにしてapplication.ymlへのパスを指定する必要がありますか?私のコードでコンパイル時にどのように設定値がハードコードされるのですか?これをやめる方法はありますか?
私の推測:何らかの理由で/path/to/application.ymlが間違っている必要があります。そしておそらくsrc/main/resourcesの設定があなたのjarにパッケージされており、それがSpring-Bootのロードです。 – alexbt