web-dev-qa-db-ja.com

Spring Boot2.0アクチュエータのgitプロパティが/ infoに追加されていません

GradleSpring Boot 2.0.0.M7を使用していて、次のプラグインを適用しています。

buildscript {
    repositories {
        maven { url "https://plugins.gradle.org/m2/" }
        maven { url "https://repo.spring.io/milestone" }
    }
    dependencies {
        classpath "org.springframework.boot:spring-boot-gradle-plugin:2.0.0.M7"
    }
}

plugins {
    id "com.gorylenko.gradle-git-properties" version "1.4.17"
}

spring-boot-starter-actuator依存関係もあります。 git.propertiesファイルはbuild/main/resouresディレクトリに正しく生成されます。プロパティmanagement.info.git.mode=fullも追加しました。公式ドキュメントのため、 git情報を追加する必要があります/infoエンドポイントに GitInfoContributor で自動的に。ただし、上記のいずれも役に立ちません。/infoエンドポイントは代わりに空のJSONを返します--{}。これを修正する方法について何かアイデアはありますか?

UPDATE 1:これまでに見つけたのは、手動でgit.propertiesout/resourcesにコピーすると、このようになります。動作しますが、何らかの理由でそこに配置されていません。

UPDATE 2gradle bootRunで実行すると機能しますが、Intellijから起動するとIDEAこれらのプロパティがgradle clean buildエンドポイントに表示されているかどうかをチェックするテストを実行する/infoを実行します-動作しません。

8
Yuriy Yunikov

問題は、IDEからアプリを実行することでした。プロパティはJARがアセンブルされるフェーズで生成されるため、含まれていません。 Java -jar artifact.jarまたはgradle bootRunを介してアプリケーションを実行すると、問題なく動作します。

問題の解決に協力してくれた@fateddyに感謝します。

5
Yuriy Yunikov

ビルド/起動の前に、process-resources mavenゴールを呼び出すようにIDEを構成できます。これにより、git.propertiesファイルとbuild-info.propertiesファイルが前に生成されます。アプリケーションの起動。

私はMavenを使用していますが、Gradleでも同様の構成が可能です。

IntelliJ Build/Run Configuration

3
eztinkerdreams

IntelliJ IDEAの場合、[設定(設定)] | [ビルド]、[実行]、[展開]、[ビルドツール]、[Gradle]、[ランナー]の[設定(設定)]でIDEビルド/実行アクションをGradleオプションに委任)を有効にできます。タブ。

2
user2749103