Meine fast leer SBT project here hat nur eine Abhängigkeit:Artifact gezogen wird ohne explizite Abhängigkeit gezeigt von SBT-Abhängigkeit-Diagramm
"org.apache.hadoop" % "hadoop-yarn-server-nodemanager" % "2.2.0"
the pom solcher Artefakt prüfen, wie es scheint es nicht hängt von jedem guice-servlet
Artefakt ab.
Allerdings, wenn ich sbt dependency-tree
betreibe ich etwas anderes sehen, ist es auf einem guice-servlet
Artefakt abhängig:
[email protected]:~/workspace/pack$ sbt dependency-tree
[info] Loading project definition from /home/user/workspace/pack/project
[info] Set current project to pack (in build file:/home/user/workspace/pack/)
[info] eu.pepot.eu:pack_2.10:0.1 [S]
[info] +-org.apache.hadoop:hadoop-yarn-server-nodemanager:2.2.0
[info] +-com.google.inject.extensions:guice-servlet:3.0
[info] | +-com.google.inject:guice:3.0
[info] | +-aopalliance:aopalliance:1.0
[info] | +-javax.inject:javax.inject:1
...
Was bin ich?
Von der POM, die Sie zur Verfügung gestellt haben, sieht es so aus, als wäre hadoop-common auch eine Abhängigkeit, die eine Reihe weiterer Abhängigkeiten aufweist. Hast du versucht, in dieses Kaninchenloch zu kommen? [hadoop-common] (https://repo1.maven.org/maven2/org/apache/hadoop/hadoop-common/2.2.0/hadoop-common-2.2.0.pom) – Eric
Wie @Eric sagte, es ist eine rekursive transitive Abhängigkeit, bis Sie alles erhalten, was Ihre Top-Level-Abhängigkeit benötigt. Das macht die Abhängigkeitsauflösung sowieso nützlich - so viele Ebenen wie nötig. –
@Aleksey was meinst du mit "rekursiv"? – mauriciojost