Google Pub Sub APIを使用したSpringブートアプリケーションがあります。ファイルcredentials.json
を使用してGoogleの認証情報やその他のプロパティを注入する必要があります。しかしプロパティファイル内のリソースからのスプリングブート参照ファイルの場所
spring.cloud.gcp.credentials.location=file:src/main/resources/credentials.json
を、私はjarファイルをビルドするとき、このファイルは、ルートディレクトリと、この経路に配置されています。私はこのように(そうでない場合は、それが構築されたjarファイル内のファイルを入れていないだろう)私のsrc/main/resources
にファイルを置きますもう有効ではありません。その時、ファイルはまだ私のresourcesディレクトリにありますが、パスはsuckentlyちょうどfile:credentials.json
なので、ビルド後にスタンドアロンのjarとして実行することはできませんから、私はEclipseから自分のアプリケーションを実行することができます。
パスを相対パスとして指定する簡単な方法はありますか?それはIDEとJARの両方で動作しますか?私はenvを通してパスを注入できます。私は絶対に必要な場合にのみそうします。
システムプロパティexを使ってパスを定義することもできます。 -Dmy.credentials.path =/my/nice/path/credentials.jsonにアクセスしてそこにアクセスしてください。最後に、プロファイルを使用できます。 –
ありがとうございます。ちょうど私が必要なもの! – Smajl