gradleタスクでspringプロファイルを使ったbootRunを実行する方法
2023-08-16 23:17:52
質問
を起動するようにgradleをセットアップしようとしています。
bootRun
プロセスを起動するように設定しようとしています。
私の現在の
bootRun
の構成は次のようになっています。
bootRun {
// pass command line options from gradle to bootRun
// usage: gradlew bootRun "-Dspring.profiles.active=local,protractor"
if (System.properties.containsKey('spring.profiles.active')) {
systemProperty "spring.profiles.active", System.properties['spring.profiles.active']
}
}
システムのプロパティを設定するのに
gradle
タスクを実行し、その後
bootRun
.
私の試みはこのようなものでした。
task bootRunDev
bootRunDev {
System.setProperty("spring.profiles.active", "Dev")
}
少し質問です。
-
は
systemProperty
は、spring boot bootRun の設定の一部ですか? - は、他のタスクでシステムプロパティを設定することは可能ですか?
-
次のステップはどうすればよいですか。私は
bootRunDev
の前にbootRun
- 他に検討すべき方法はありますか?
-エリック
どのように解決するのですか?
最も単純な方法は、デフォルトを定義し、それをオーバーライドできるようにすることです。この場合、systemPropertyの使い道がよくわかりません。単純な引数で十分です。
def profiles = 'prod'
bootRun {
args = ["--spring.profiles.active=" + profiles]
}
devを実行するため。
./gradlew bootRun -Pdev
タスクに依存関係を追加するには、次のようにします。
task setDevProperties(dependsOn: bootRun) << {
doFirst {
System.setProperty('spring.profiles.active', profiles)
}
}
Gradleでこれを実現する方法はたくさんあります。
編集する
環境ごとに設定ファイルを分けて設定する。
if (project.hasProperty('prod')) {
apply from: 'gradle/profile_prod.gradle'
} else {
apply from: 'gradle/profile_dev.gradle'
}
各設定は、例えばタスクをオーバーライドすることができます。
def profiles = 'prod'
bootRun {
systemProperty "spring.profiles.active", activeProfile
}
を指定して実行します。
prod
のようなフラグを立てて実行します。
./gradlew <task> -Pprod
関連
-
javaの非静的メソッドを静的に参照することができない
-
スレッド "main" での例外 java.lang.ArrayIndexOutOfBoundsException:5 エラー
-
Uncaught ReferenceError: は定義されていません。
-
無効な文字定数
-
Javaジェネリックを1つの記事で
-
[解決済み] Mavenを使用して、依存関係を持つ実行可能なJARを作成するにはどうすればよいですか?
-
[解決済み] Spring Bootアプリケーションにポートを設定する方法
-
[解決済み] gradleに依存関係を強制的に再ダウンロードさせるには?
-
[解決済み】spring bootでコマンドラインからアクティブなプロファイルと設定場所を設定する。
-
[解決済み】IntelliJから実行するときにSpring Bootプロファイルを有効にするにはどうすればよいですか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
mvn' は、内部または外部のコマンド、操作可能なプログラムまたはバッチファイルとして認識されません。
-
Eclipseは、ポップアップA Java Exception has occurred.を実行し、エラーException in threadの解決策を報告します。
-
Springの設定でxsdファイルのバージョン番号を設定しない方が良い理由
-
ajax コミット リソースの読み込みに失敗しました: サーバーはステータス 400 で応答しました ()
-
名前 'XXX' を持つ Bean の作成に失敗しました。自動依存関係の注入に失敗しました 解決方法
-
unsigned char* から const jbyte* {aka const signed char*} への変換が無効です。
-
Java Notes 005_この行に複数のマーカーがある - キーを変数に解決できない - シンタックスエラー、ins
-
java マイクロソフト払い戻し予期せぬサーバーからのファイルの終了
-
SpringBoot 起動エラー java.nio.charset.MalformedInputException: 入力長 = 2 解決
-
CAS 5.1.8でhttpをサポートし、認証されていない認可サービスエラーのプロンプトが表示される問題を解決した。