此代码曾用于使用Jackson 2.6.x,但不适用于2.7 +。
// Lombok for code simplicity
@Setter
@Getter
@AllArgsConstructor
public static class Naming {
int camelCase;
}
...
Naming naming = new Naming(1);
ObjectMapper mapper = new ObjectMapper();
mapper.setPropertyNamingStrategy(
PropertyNamingStrategy.CAMEL_CASE_TO_LOWER_CASE_WITH_UNDERSCORES);
System.out.println(mapper.writeValueAsString(naming));
// "{\"camel_case\":1}" Jackson 2.6.x
// "{\"camelCase\":1}" Jackson 2.7.x
我错过了什么?
答案 0 :(得分:1)
事实证明,Lombok注释public function manage($user, $userToEdit) {
return $user->type === 'admin' || $user->id === $userToEdit->id;
}
导致了问题。
GitHub报道了a related issue。这似乎是杰克逊的一个错误。它可以在2.7.0和2.7.1版本中重现。