Wie wird ein Klassifikator in der Abhängigkeit einer Gradle-Abhängigkeit angegeben?

Lesezeit: 1 Minute

Angenommen, ich möchte Guice-assistedinject als Abhängigkeit in meinem Projekt hinzufügen. Es spezifiziert das Guice-Artefakt selbst als Abhängigkeit. Wie sage ich ihm, dass es die no_aop-Version von Guice verwenden soll?

Ich weiß, dass ich Folgendes tun kann, aber kann ich es in einem Schritt tun, ohne das Guice-Modul auszuschließen?

dependencies {
  compile (group: 'com.google.inject.extensions', name: 'guice-assistedinject', version: '3.0') {
    exclude module: 'guice'
  }
  compile group: 'com.google.inject', name: 'guice', version: '3.0', classifier: 'no_aop'
}

Es gibt keine einfachere Lösung. Sie können den Code verkürzen, indem Sie eine kurze Abhängigkeitsnotation verwenden (z "com.google.inject:guice:3.0:no_aop").

  • Funktioniert dies nur für ein .jar-Artefakt? Funktioniert dasselbe auch für ein .zip-Artefakt, dh guice-3.0-no_app.zip, wenn es in Artifactory oder einem ähnlichen binären Repo verfügbar ist.

    – AKS

    9. Juli 2014 um 15:29 Uhr


  • Antwort gefunden: “com.google.inject:guice:3.0:[email protected]” funktioniert in diesem Fall.

    – AKS

    9. Juli 2014 um 19:53 Uhr

  • Wenn das Modul ein (korrektes) POM hat, @zip wird nicht benötigt. @zip bedeutet im Wesentlichen “nur dieses Zip-Artefakt erhalten, keine Notwendigkeit, sich das POM anzusehen, keine Notwendigkeit, transitive Abhängigkeiten zu erhalten”.

    – Peter Niederwieser

    10. Juli 2014 um 5:05 Uhr

  • jede Syntax mit Klassifikator ohne Angabe einer Version. (ein Szenario, in dem die Version von bom genommen wird)

    – c.sankhala

    3. Dezember 2019 um 7:13 Uhr


1431010cookie-checkWie wird ein Klassifikator in der Abhängigkeit einer Gradle-Abhängigkeit angegeben?

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy