Wie Sie ein Bintray user-repo (richtig) für eine Abhängigkeit von gradle?

Dies ist mehr ein 'mache ich es richtig' in Frage.

Kurze Hintergrundgeschichte: ich habe gebaut ein gradle-plugin (im standalone-gradle/groovy-Projekt). Ich benutze es in einem anderen java-Projekt. Das client-Projekt war er über so etwas wie:

buildScript
{
      flatDir {
            dirs '../my-gradle-plugin/build/libs'
      }

      classpath name: 'gradle-my-plugin'
}

So, ich wollte nicht die relative Referenz auf das plugin-Projekt (noch-plugin ein Teil der Kunden). Ich dachte, ich würde sehen, ob ich es bis in ein BinTray und beziehen sich auf wie eine "echte" plugin.

So einrichten BinTray und nach viel Versuch und Irrtum, ich habe es zu arbeiten, aber ich glaube nicht, dass ich es richtig gemacht hast. Hier ist was ich getan habe:

  1. Aus einem maven-repo: MyStuff
  2. Aus einem Paket: gradle-mein-plugin
  3. Fassung: 0.1
  4. hochgeladen eine Datei für diese version, aber die angegebenen Ziel-Pfad wie "org/fhw/gradle-mein-plugin/0.1"

Meine buildscripts block sieht wie folgt aus:

buildScript {
    repositories {
        maven {
            url 'http://dl.bintray.com/my-bintray-id/MyStuff
        }
    }    
    dependencies {
        classpath 'org.fhw:gradle-my-plugin:0.1'
   }
}

Also, was ich bin neugierig ist, den hack habe ich mit dem Ziel auf BinTray. W/O-dies der richtige Weg war nicht Platz für die hochgeladenen Dateien/Gläser (für eine version).

So ist diese in einem korrekten Prozess für die BinTray und Gradle dependencies?

  • so weit, so okay. Aber man kann vereinfachen den Prozess durch die Verwendung des gradle bintray plugin Datei-Upload-plugin auf bintray. Mit dem plugin, brauchen Sie nicht manuell zu erstellen, Pfade etc.
  • Ja, ich bin vertraut mit den plugin(s); aber noch nicht ausprobiert habe Sie noch nicht. Auch ich bin vertraut mit einige chatter, dass vielleicht eines der plugins ist überflüssig (github.com/davidmc24/gradle-bintray-plugin) und das Vanille-gradle kann (mit mavenPublisher, vielleicht) veröffentlichen zu BinTray. Das andere plugin (github.com/bintray/gradle-bintray-plugin) ist, dass das, was Sie vorschlagen? Also ich bin ein nexus-user, und fand es peinlich zu haben, um den Pfad mit meinen 'Gruppen-id'; beim nexus scheint dies zu verbergen. Das macht mich denke, ich mache BinTray falsch.
InformationsquelleAutor fwelland | 2014-09-08
Schreibe einen Kommentar