configuration.yml has an error: * Unrecognized field at: driverClass - DROPWIZARD

configuration.yml has an error: * Unrecognized field at: driverClass - DROPWIZARD

启动使用数据库连接到 MySQL 的 Dropwizard 应用程序时出现以下错误:

configuration.yml has an error:
* Unrecognized field at: driverClass
Did you mean?:
  - database
  - server
  - metrics
  - logging

Configuration.yml:

server:
  applicationConnectors:
    - type: http 
    port: 9010
  adminConnectors:
    - type: http
    port: 9011
  database:
    driverClass: com.mysql.jdbc.Driver
    user: ppub_web
    password: password
    url: jdbc:mysql://url:to connect port

配置class:

public class ConfigurationClass extends Configuration{

@Valid
@NotNull    
@JsonProperty("database")
private DataSourceFactory datasourceFactory = new DataSourceFactory();

public DataSourceFactory getDataSourceFactory() {
        return datasourceFactory;
    }
}
  • 确保您 class DataSourceFactory 包含一个名为 driverClass
  • 的字段
  • 确保 Configuration.yml 的格式符合 yaml 规范。根据错误信息,你的问题正是因为这个。
  • 确保 Jackson 可以访问 DataSourceFactory 中的字段(getters/setters 或 public 字段或正确的 Jackson 注释以允许设置私有字段)

P.S。您不必通过 new DataSourceFactory();

初始化 datasourceFactory