情况:YAML到Java bean的转化
@Configuration
@EnableConfigurationProperties
@ConfigurationProperties(prefix = "")
@Data
public class AllowedCrossroads {
private List<CrossroadCombination> allowed;
}
@Data
@Builder
@AllArgsConstructor
public class CrossroadCombination {
private String firstCrossroad;
private String secondCrossroad;
private String thirdCrossroad;
private String fourthCrossroad;
}
异常:elements left unbound.
解决方式:
内部类变为静态的、加上@NoArgsConstructor注解
@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
public static class CrossroadCombination {
private String firstCrossroad;
private String secondCrossroad;
private String thirdCrossroad;
private String fourthCrossroad;
参考:java - Reason: The elements were left unbound - Stack Overflow