1 はじめに
以前にアーキテクチャを構築したときに同様の状況に遭遇しましたが、@EnableConfigurationProperties アノテーションを使用すると、プロジェクトにスターターが導入されたときに、プロパティ内のプロパティが自動的に要求されませんでした。
@Data
@ConfigurationProperties(prefix = "properties")
public class DefaultProperties {
@NestedConfigurationProperty
public SwaggerProperties swagger;
}
--------以上为properties
properties:
swagger:
type: service
packages: com.wsq.controller
api-tittle: 'swagger文档'
service-url:
writer-name: 'wangqueyue'
version: '1.0.0'
------无法识别,只能一个个的敲击。
2.解決策
2.1依存関係パッケージの導入
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-configuration-processor</artifactId>
<optional>true</optional>
</dependency>
2.2配置idea
spring-configuration-metadata.json の作成方法はオンラインで説明されていますが、このファイルは非常に面倒で手動で記述するのはほぼ不可能なので、生成後に修正するだけで済む簡単な生成方法を紹介します。
設定 > ビルド、実行、デプロイ > Compiker > アノテーション プロセッサ
注釈処理を有効にするにチェックを入れます
2.3 パッケージ化とコンパイルスターター (重要なポイント)
- コンパイル時に maven clean を使用する必要があります。そうしないと、前回コンパイルしてパッケージ化したものが間違っており、まだ正しいと思っていたことになります。
- 次に、Maven をコンパイルします (スターターのタイプは pom ではなく jar である必要があることに注意してください)
- Maven をインストールするには、プロジェクトをローカル サービスにパッケージ化する必要があります。
ターゲット ディレクトリにspring-configuration-metadata.json
ファイルが生成されます。手動で作成する必要はありません。スターターで作成した一部のファイルはパッケージ化しないと無効のままです。
2.4Additional-spring-configuration-metadata.json ファイルの作成
このファイルは先ほどのファイルの補足説明となっており、作成方法も非常に簡単です。
- 直接作成する必要はありませんが、対象ディレクトリ内のファイルを以下のディレクトリ
spring-configuration-metadata.json
にコピーします。resource
META-INF
- ファイルをタイトルの名前に変更し、Maven のクリーン、コンパイル、インストールを続行します。
- 対象のディレクトリにファイル
additional-spring-configuration-metadata.json
が生成されるので、補足ファイルが完成します。