jooby
jooby copied to clipboard
Could starter:graphql-starter:1.0.0 drop off redundant dependencies?
Hi! I found the pom file of project starter:graphql-starter:1.0.0 introduced 49 dependencies. However, among them, 6 libraries (12%) are not used by your project. I list the redundant dependencies below (labelled as red ones in the figure):
Redundant dependencies
com.google.code.findbugs:jsr305:jar:3.0.2:compile com.google.guava:listenablefuture:jar:9999.0-empty-to-avoid-conflict-with-guava:compile com.google.errorprone:error_prone_annotations:jar:2.3.4:compile com.google.j2objc:j2objc-annotations:jar:1.3:compile org.reactivestreams:reactive-streams:jar:1.0.2:compile org.jetbrains:annotations:jar:13.0:test
Removing the redundant dependencies can reduce the size of project and prevent potential dependency conflict issues (i.e., multiple versions of the same library). More importantly, one of the redundant dependencies com.google.code.findbugs:jsr305:jar:3.0.2:compile induced dependency conflict in the dependency graph. As such, I suggest a refactoring operation for starter:graphql-starter:1.0.0’s pom file.
The attached PR helps resolve the reported problem. It is safe to remove the unused libraries (we considered Java reflection relations when analyzing the dependencies). These changes have passed starter:graphql-starter:1.0.0’s maven tests.
Best regards