アプリの別の部分で javars を使用しました。今、私はそれを別のものに追加していて、 IllegalArgumentException: argument should not be null を取得しています。しかし、(オブジェクトをシリアライズしてログに記録することにより) 2 つのオブジェクトが compare() メソッドに渡されたときに null ではないことを確認しました。
また、これは Mockito を介して実行される単体テスト内でのみ発生します。渡されたオブジェクトのプロパティがnullであると仮定し、それがエラーを引き起こしていると思います。しかし、null プロパティは javars が検出する有効な比較ではありませんか?
javas バージョン 1.1 を使用しています。
これが私のコードのスニペットです:
private static final Javers javers = JaversBuilder.javers().build();
Diff difference = javers.compare(object1, object2);
スタック トレースは次のとおりです。
java.lang.IllegalArgumentException: argument should not be null
at org.javers.common.validation.Validate.argumentIsNotNull(Validate.java:16)
at org.javers.common.validation.Validate.argumentIsNotNull(Validate.java:24)
at org.javers.common.validation.Validate.argumentsAreNotNull(Validate.java:32)
at org.javers.core.metamodel.type.SetType.map(SetType.java:21)
at org.javers.core.diff.appenders.SetChangeAppender.calculateEntryChanges(SetChangeAppender.java:63)
at org.javers.core.diff.appenders.SetChangeAppender.calculateChanges(SetChangeAppender.java:89)
at org.javers.core.diff.appenders.SetChangeAppender.calculateChanges(SetChangeAppender.java:20)
at org.javers.core.diff.DiffFactory.appendChanges(DiffFactory.java:142)
at org.javers.core.diff.DiffFactory.appendPropertyChanges(DiffFactory.java:132)
at org.javers.core.diff.DiffFactory.createAndAppendChanges(DiffFactory.java:114)
at org.javers.core.diff.DiffFactory.create(DiffFactory.java:65)
at org.javers.core.diff.DiffFactory.compare(DiffFactory.java:58)
at org.javers.core.JaversCore.compare(JaversCore.java:75)