web-dev-qa-db-ja.com

Intellij IDEAは、スプリングブートプロパティを解決できないと訴えていますが、正常に動作します

enter image description here

構成プロパティを解決できません '...

@Valueアノテーションまたは自動配線された環境を介してプロパティにアクセスしても問題ありません。しかし、私自身の定義したプロパティはすべて、IDEAでこの警告を受け取ります。 IDEAを取得してこれらを認識し、気にしないようにするにはどうすればよいですか?

37
Stoopkid

IntelliJ IDEAがSpring Bootプロパティを知るために、プロジェクトでSpring Boot設定メタデータを定義できます。

オプション1:

プロパティに@ConfigurationProperties注釈付きクラスを使用できる場合、Spring Boot構成注釈プロセッサをクラスパスに追加すると、IntelliJ IDEAがtargetまたはoutで構成メタデータを生成します。

Maven:

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-configuration-processor</artifactId>
    <optional>true</optional>
</dependency>

Gradle:

implementation 'org.springframework.boot:spring-boot-configuration-processor'

オプション2:

構成メタデータファイルを自分で作成しますsrc/main/resources/META-INF/spring-configuration-metadata.json

コンテンツ:

{
  "properties": [
    {
      "name": "myapp.someprop",
      "type": "Java.lang.String"
    },
    {
      "name": "myapp.someintprop",
      "type": "Java.lang.Integer"
    }
  ]
}

オプション1および2:

ビルドシステム(Maven/Gradle)のIntelliJ IDEAツールウィンドウで、[更新]ボタンをクリックします。

メニューからBuild > Rebuild Projectを選択します。

それでも警告が表示される場合は、IDEを再起動してみてください。 File > Invalidate Caches / Restartを選択し、Invalidate and Restartをクリックします。

47
Igor Akkerman