[{"title":"( 260 个子文件 376KB ) java-object-diff:轻松进行diff和合并Java对象的库","children":[{"title":"gradlew <span style='color:#111;'> 5.17KB </span>","children":null,"spread":false},{"title":"settings.gradle <span style='color:#111;'> 38B </span>","children":null,"spread":false},{"title":"CONTRIBUTING.md <span style='color:#111;'> 3.02KB </span>","children":null,"spread":false},{"title":"IgnoreIT.groovy <span style='color:#111;'> 2.13KB </span>","children":null,"spread":false},{"title":"AdditionIntegrationIT.groovy <span style='color:#111;'> 2.08KB </span>","children":null,"spread":false},{"title":"DeepDiffingCollectionItemChangeIT.groovy <span style='color:#111;'> 1.53KB </span>","children":null,"spread":false},{"title":"ObjectDifferIT.groovy <span style='color:#111;'> 11.27KB </span>","children":null,"spread":false},{"title":"CategoriesTestIT.groovy <span style='color:#111;'> 1.80KB </span>","children":null,"spread":false},{"title":"Issue38.java <span style='color:#111;'> 3.05KB </span>","children":null,"spread":false},{"title":"MapIssuesTest.groovy <span style='color:#111;'> 2.46KB </span>","children":null,"spread":false},{"title":"ObjectMergerIT.groovy <span style='color:#111;'> 1.50KB </span>","children":null,"spread":false},{"title":"Issue77IT.groovy <span style='color:#111;'> 1.18KB </span>","children":null,"spread":false},{"title":"MainApp.java <span style='color:#111;'> 1.49KB </span>","children":null,"spread":false},{"title":"Person.java <span style='color:#111;'> 910B </span>","children":null,"spread":false},{"title":"TopHat.java <span style='color:#111;'> 1007B </span>","children":null,"spread":false},{"title":"Hat.java <span style='color:#111;'> 935B </span>","children":null,"spread":false},{"title":"Issue127Main.java <span style='color:#111;'> 2.69KB </span>","children":null,"spread":false},{"title":"IgnoreByPropertyNameIT.groovy <span style='color:#111;'> 1.77KB </span>","children":null,"spread":false},{"title":"Person.java <span style='color:#111;'> 582B </span>","children":null,"spread":false},{"title":"PersonDiffIT.groovy <span style='color:#111;'> 1.44KB </span>","children":null,"spread":false},{"title":"EnterLeaveSequenceInconsistencyIT.groovy <span style='color:#111;'> 2.21KB </span>","children":null,"spread":false},{"title":"Issue43IT.groovy <span style='color:#111;'> 2.06KB </span>","children":null,"spread":false},{"title":"CircularReferenceDetectionBasedOnIdentityIT.groovy <span style='color:#111;'> 1.83KB </span>","children":null,"spread":false},{"title":"GraphIT.groovy <span style='color:#111;'> 15.91KB </span>","children":null,"spread":false},{"title":"GraphNode.java <span style='color:#111;'> 3.25KB </span>","children":null,"spread":false},{"title":"CircularReferenceIT.groovy <span style='color:#111;'> 2.43KB </span>","children":null,"spread":false},{"title":"CircularReferenceDetectionBasedOnEqualsIT.groovy <span style='color:#111;'> 1.75KB </span>","children":null,"spread":false},{"title":"ConcurrencyIT.groovy <span style='color:#111;'> 1.78KB </span>","children":null,"spread":false},{"title":"DiffNodeIT.groovy <span style='color:#111;'> 2.72KB </span>","children":null,"spread":false},{"title":"AccessFieldAnnotationIT.groovy <span style='color:#111;'> 1.32KB </span>","children":null,"spread":false},{"title":"TestAnnotation.java <span style='color:#111;'> 961B </span>","children":null,"spread":false},{"title":"ObjectDifferBuilderIT.groovy <span style='color:#111;'> 1.44KB </span>","children":null,"spread":false},{"title":"IntrospectionAT.groovy <span style='color:#111;'> 3.58KB </span>","children":null,"spread":false},{"title":"HandlingPropertyAccessExceptionsAT.groovy <span style='color:#111;'> 3.46KB </span>","children":null,"spread":false},{"title":"Example2IT.groovy <span style='color:#111;'> 3.75KB </span>","children":null,"spread":false},{"title":"Example1IT.groovy <span style='color:#111;'> 1.98KB </span>","children":null,"spread":false},{"title":"GettingStarted.java <span style='color:#111;'> 2.47KB </span>","children":null,"spread":false},{"title":"StarterGuide.java <span style='color:#111;'> 2.38KB </span>","children":null,"spread":false},{"title":"EqualsOnlyValueProviderMethodExample.java <span style='color:#111;'> 2.61KB </span>","children":null,"spread":false},{"title":"ByteArrayDiffer.java <span style='color:#111;'> 1.86KB </span>","children":null,"spread":false},{"title":"RuntimeTypeResolutionExample.java <span style='color:#111;'> 1.98KB </span>","children":null,"spread":false},{"title":"MapEntryValueAccessExample.java <span style='color:#111;'> 1.79KB </span>","children":null,"spread":false},{"title":"CustomDifferExampleIT.groovy <span style='color:#111;'> 1.67KB </span>","children":null,"spread":false},{"title":"IgnoreExample.java <span style='color:#111;'> 2.07KB </span>","children":null,"spread":false},{"title":"CanonicalAccessorExample.java <span style='color:#111;'> 4.39KB </span>","children":null,"spread":false},{"title":"SimpleNodeExample.java <span style='color:#111;'> 2.12KB </span>","children":null,"spread":false},{"title":"Contact.java <span style='color:#111;'> 2.87KB </span>","children":null,"spread":false},{"title":"PhoneBook.java <span style='color:#111;'> 2.39KB </span>","children":null,"spread":false},{"title":"PhoneNumber.java <span style='color:#111;'> 2.19KB </span>","children":null,"spread":false},{"title":"PhoneBookIT.groovy <span style='color:#111;'> 2.55KB </span>","children":null,"spread":false},{"title":"IdentityStrategyIT.groovy <span style='color:#111;'> 5.16KB </span>","children":null,"spread":false},{"title":"IdentityStrategyAT.groovy <span style='color:#111;'> 2.61KB </span>","children":null,"spread":false},{"title":"ParentTypeBasedPropertyInclusionViaConfigAT.groovy <span style='color:#111;'> 4.75KB </span>","children":null,"spread":false},{"title":"ParentTypeBasedPropertyInclusionViaAnnotationAT.groovy <span style='color:#111;'> 4.90KB </span>","children":null,"spread":false},{"title":"InclusionAT.groovy <span style='color:#111;'> 5.51KB </span>","children":null,"spread":false},{"title":"PropertyInclusionViaInclusionResolverAT.groovy <span style='color:#111;'> 1.81KB </span>","children":null,"spread":false},{"title":"ExclusiveInclusionIT.groovy <span style='color:#111;'> 4.35KB </span>","children":null,"spread":false},{"title":"PhoneBookSetup.groovy <span style='color:#111;'> 2.37KB </span>","children":null,"spread":false},{"title":"InclusionIT.groovy <span style='color:#111;'> 7.44KB </span>","children":null,"spread":false},{"title":"DateComparisonIT.groovy <span style='color:#111;'> 1.52KB </span>","children":null,"spread":false},{"title":"logback-test.xml <span style='color:#111;'> 896B </span>","children":null,"spread":false},{"title":"CollectionItemElementSelectorTest.groovy <span style='color:#111;'> 1.83KB </span>","children":null,"spread":false},{"title":"MapKeyElementSelectorTest.groovy <span style='color:#111;'> 2.51KB </span>","children":null,"spread":false},{"title":"RootElementSelectorTest.groovy <span style='color:#111;'> 1.39KB </span>","children":null,"spread":false},{"title":"CategoryServiceTest.groovy <span style='color:#111;'> 2.83KB </span>","children":null,"spread":false},{"title":"DefaultNodeQueryServiceTest.groovy <span style='color:#111;'> 3.66KB </span>","children":null,"spread":false},{"title":"DiffNodeFieldAnnotationsTest.groovy <span style='color:#111;'> 3.99KB </span>","children":null,"spread":false},{"title":"PrintingVisitorTest.groovy <span style='color:#111;'> 2.42KB </span>","children":null,"spread":false},{"title":"SomeFieldAnnotation.java <span style='color:#111;'> 899B </span>","children":null,"spread":false},{"title":"ToMapPrintingVisitorTest.groovy <span style='color:#111;'> 3.67KB </span>","children":null,"spread":false},{"title":"CategoryFilteringVisitorTest.groovy <span style='color:#111;'> 2.61KB </span>","children":null,"spread":false},{"title":"DiffNodeTest.groovy <span style='color:#111;'> 8.60KB </span>","children":null,"spread":false},{"title":"VisitTest.groovy <span style='color:#111;'> 1020B </span>","children":null,"spread":false},{"title":"IntrospectionServiceTest.groovy <span style='color:#111;'> 5.87KB </span>","children":null,"spread":false},{"title":"PropertyAccessorCollectionTest.groovy <span style='color:#111;'> 2.41KB </span>","children":null,"spread":false},{"title":"PropertyAccessorMapTest.groovy <span style='color:#111;'> 2.04KB </span>","children":null,"spread":false},{"title":"PropertyReadExceptionTest.groovy <span style='color:#111;'> 1.28KB </span>","children":null,"spread":false},{"title":"StandardIntrospectorTest.groovy <span style='color:#111;'> 3.67KB </span>","children":null,"spread":false},{"title":"DefaultPropertyAccessExceptionHandlerTest.groovy <span style='color:#111;'> 1.20KB </span>","children":null,"spread":false},{"title":"PropertyAccessorTest.groovy <span style='color:#111;'> 6.40KB </span>","children":null,"spread":false},{"title":"PropertyAccessorBuilder.java <span style='color:#111;'> 2.22KB </span>","children":null,"spread":false},{"title":"PropertyWriteExceptionTest.groovy <span style='color:#111;'> 1.36KB </span>","children":null,"spread":false},{"title":"EqualsIdentityStrategyTest.groovy <span style='color:#111;'> 1.15KB </span>","children":null,"spread":false},{"title":"NodePathTest.groovy <span style='color:#111;'> 5.43KB </span>","children":null,"spread":false},{"title":"NodePathValueHolderTest.groovy <span style='color:#111;'> 1.25KB </span>","children":null,"spread":false},{"title":"MapEntryAccessorTest.groovy <span style='color:#111;'> 3.85KB </span>","children":null,"spread":false},{"title":"RootAccessorTest.groovy <span style='color:#111;'> 1.54KB </span>","children":null,"spread":false},{"title":"CollectionItemAccessorTest.groovy <span style='color:#111;'> 5.74KB </span>","children":null,"spread":false},{"title":"InstancesTest.groovy <span style='color:#111;'> 9.00KB </span>","children":null,"spread":false},{"title":"ObjectWithHashCodeAndEquals.java <span style='color:#111;'> 1.83KB </span>","children":null,"spread":false},{"title":"ObjectWithMap.java <span style='color:#111;'> 1.01KB </span>","children":null,"spread":false},{"title":"ObjectWithIgnoredMap.java <span style='color:#111;'> 930B </span>","children":null,"spread":false},{"title":"ObjectWithEqualsOnlyPropertyType.java <span style='color:#111;'> 924B </span>","children":null,"spread":false},{"title":"ObjectWithInheritedPropertyAnnotation.java <span style='color:#111;'> 937B </span>","children":null,"spread":false},{"title":"ObjectWithoutDefaultConstructor.java <span style='color:#111;'> 803B </span>","children":null,"spread":false},{"title":"ObjectWithCircularReference.java <span style='color:#111;'> 1.33KB </span>","children":null,"spread":false},{"title":"ObjectWithAccessTrackingIgnoredProperty.java <span style='color:#111;'> 1.09KB </span>","children":null,"spread":false},{"title":"ObjectWithNestedObject.java <span style='color:#111;'> 1.62KB </span>","children":null,"spread":false},{"title":"ObjectWithAnnotatedProperty.java <span style='color:#111;'> 1.08KB </span>","children":null,"spread":false},{"title":"ObjectWithMethodEqualsOnlyValueProviderMethodOnGetCollection.java <span style='color:#111;'> 1.11KB </span>","children":null,"spread":false},{"title":"......","children":null,"spread":false},{"title":"<span style='color:steelblue;'>文件过多,未全部展示</span>","children":null,"spread":false}],"spread":true}]