2015-01-12 7 views
22

Ich mag folgende Bibliothek in meinem Projekt in build.gradle kompilieren:Wie geparkt Bibliothek in Gradle zu kompilieren?

https://github.com/theDazzler/Android-Bootstrap

Es ist gegabelt aus https://github.com/Bearded-Hen/Android-Bootstrap, aber keine Dokumentation im Repository wird erläutert, wie in in Projekt einzubeziehen.

habe ich versucht, so etwas wie dieses:

compile 'com.theDazzler:androidbootstrap:+' 

aber gradle ausgefallen und zeigt Fehler, dass Bibliothek nicht gefunden.

Edit: Kann jemand es abzweigen und/oder veröffentlichen?

Antwort

31

Diese Gabel ist nicht veröffentlicht in der Maven Central Repo.

Dann Sie können nicht ein Import wie compile com.theDazzler:androidbootstrap:+

verwenden Sie müssen: - Klon diese Bibliothek lokal als Modul in Ihrem Projekt den https://github.com/theDazzler/Android-Bootstrap/tree/master/AndroidBootstrap Ordner in Ihrem root/module1 Ordner klonen.

root: 
     module1 
     build.gradle 
     app 
     build.gradle 
     settings.gradle 
  • Ihre settings.gradle Datei ändern in

    umfassen ': module1' gehören ': app'

In Ihrem app/build.gradle-Datei müssen Sie hinzufügen:

dependencies { 
    // Module Library 
    compile project(':module1') 
} 

schließlich in Ihrem module1/build.gradle Sie das Niveau für gradle Plugin verwendet zu überprüfen.

EDIT 31/10/2015:

Sie einen anderen Weg, um eine Abhängigkeit mit einem Github-Projekt hinzufügen können, die GitHub Repo verwenden und die jitpack plugin
In diesem Fall haben Sie diese Repo tp hinzufügen Ihre build.gradle

repositories { 
     // ... 
     maven { url "https://jitpack.io" } 
    } 

und die Abhängigkeit:

dependencies { 
     compile 'com.github.User:Repo:Tag' 
    } 
+0

Kannst du es nicht abzweigen und ein neues Repo machen und es dann veröffentlichen? – xyz

+0

@GabrieleMariotti: Hallo Herr, könnten Sie mir vielleicht mit meiner Frage [hier] (http://stackoverflow.com/q/36157555/3287204) helfen? Danke ... :) –

+0

Bitte beachten Sie, dass Sie * Modul * Ordner nehmen und es in Ihr Projekt, nicht das ganze Projekt einfügen möchten. – charlag

3

Das Problem ist: hat das theDazzler/Android-Bootstrap irgendwo veröffentlicht? In irgendeinem Gradle/Maven Repo? Die übliche build.gradle Datei hat einen Abschnitt repositories, der diese Maven Repo verweisen sollte.

So ist es möglich, jedes Projekt theDazzler/Android-Bootstrap verwenden, sollte den Repo verweisen, in dem es veröffentlicht wird, und mit einem Projekt wie gradle-git-repo-plugin, könnten Sie diese Gabel auf seinen eigenen release section veröffentlichen, es zu veröffentlichen.

Diese Aufgabe wird in eine publishToGithub Aufgabe eingepackt, die das Festschreiben und Drücken der Änderung behandelt. Dann können Sie laufen

gradle -Porg=layerhq -Prepo=gradle-releases publishToGithub 

Sie auch

gradle -Porg=layerhq -Prepo=gradle-releases publish 

Stufe Release im lokalen GitHub Repo laufen kann und es manuell begehen.

3

Hallo ich hatte das gleiche Problem, aber mit einem anderen Projekt :)

Also zuerst sollten Sie den Bibliothekscode auf Ihrem Rechner haben. Die nächsten Schritte sind: Fügen Sie eine neue Datei mit dem Namen settings.gradle zum Stamm Ihres Projekts hinzu, wenn es nicht bereits dort ist.

innen fügen Sie diese:

include 'AndroidBootStrap' 
project('AndroidBootStrap').path = "path/to/AndroidBootstrap/AndroidBootStrapLibrary" 

umfassen auch für Ihr Root-Projekt hinzufügen, wenn seine nicht da. In Ihrem build.gradle Datei hinzufügen

compile project(':AndroidBootStrap') 

die Abhängigkeit hinzuzufügen.

Wie Sie Ihre Ordnerstruktur aussehen sollte:

root 
    YourProject 
     settings.gradle 
     YourProjectModule 
      build.gradle 

    AndroidBootStrap 
     AndroidBootStrapLibrary 
      build.gradle 

Am Ende werden die Dateien wie folgt aussehen:

settings.gradle:

include 'AndroidBootStrap' 
project('AndroidBootStrap').path = "../AndroidBootstrap/AndroidBootStrapLibrary" 
include 'YourProjectModule' 

build.gradle (YourModule):

... 
dependencies { 
    ... 
    compile project(':AndroidBootStrap') 
} 

Vielleicht ist es notwendig, einen Punkt zu ändern, aber ich hoffe, Sie bekommen die Idee!

Prost Neri

1

Es kann einfach mit Jitpack erfolgen.

Schritt 1. Fügen Sie die JitPack Repository auf dem Build-Datei

allprojects { 
     repositories { 

      maven { url 'https://jitpack.io' } 
     } 
    } 

Schritt 2. die Abhängigkeit hinzufügen

dependencies { 
     compile 'com.github.User:Repo:Tag' 
    } 

für zB: Kompilierung ‚com.github.sachinvarma: JcPlayer: 0.0 .1 '

+0

Hätten Sie etwas dagegen, um Ihre Lösung zu beantworten? https://stackoverflow.com/questions/48070764/how-to-compile-a-specific-github-pr-into-my-android-studio-project-grade-error –

Verwandte Themen