0

graalvm と micronaut を使用してネイティブ イメージをビルドしましたが、ネイティブ イメージ アプリは @Value アノテーションを使用して環境変数を取得できません。アプリをjarとして実行しようとすると、問題なく動作します。

@Singleton
public class WebComponentService {
    @Value("${config.adyen.merchantaccount}")
    private String merchantAccount;
}

これは私が得るエラーです

メッセージ: フィールド値の設定エラー: タイプのフィールド 'merchantAccount' が見つかりませんでした: example.micronaut.getOriginKeys.WebComponentService 取得したパス: 新しい GetOriginKeysController([WebComponentService webComponentService]) io.micronaut.context.exceptions.DependencyInjectionException: フィールドの値を注入できませんでしたクラスの [merchantAccount]: example.micronaut.getOriginKeys.WebComponentService

ただし、このような環境変数を取得しようとすると、正常に機能します。

Map<String, String> environmentVars  = System.getenv();
String merchantAccount = environmentVars.get("CONFIG_ADYEN_MERCHANTACCOUNT");

これは私がネイティブアプリを実行する方法です

$ CONFIG_ADYEN_MERCHANTACCOUNT=CommercetoolsGmbHDE775 ./theNativeApp
4

1 に答える 1