2016-11-17 103 views
1

推出使用一個數據庫連接到MySQL一個Dropwizard應用程序時,我發現了以下錯誤:無法識別場Dropwizard YAML文件

database: 
    driverClass: com.mysql.jdbc.Driver 
    user: ${MYSQL_USERNAME} 
    password: ${MYSQL_PASSWORD} 
    url: ${MYSQL_URL} 

而且在我的配置類,我有以下幾點:

@Valid() 
@NotNull() 
@JsonProperty() 
private static DataSourceFactory database; 

public static DataSourceFactory getDatabase() { 
    return database; 
} 

public static void setDatabase(final DataSourceFactory database) { 
    AppConfig.database = database; 
} 

其他幾個複雜的配置對象正確加載(這是一個非常大的配置文件),但這不是。任何想法,爲什麼我得到這個錯誤?

編輯此問題與此相似:UnrecognizedPropertyException While Reading A YAML File。但是,該解決方案對我無效。

回答

1

編輯:檢查示例應用程序herehere

  1. @JsonProperty() - 這裏有額外的括號。
  2. private static DataSourceFactory database; - 從這裏取出static。請參閱the docs它應該是什麼樣子。
  3. 還要添加= new DataSourceFactory();按文檔和this question

我檢查過舊版本的Dropwizard,2號是你最直接的問題。