2016-10-20 2 views
2

Ich versuche, eine automatisierte Android-Build in einem lokalen Netzwerksegment (dh ohne Zugriff auf öffentliche Jcenter oder Maven Repositories) zu tun. Um dies zu tun, muss ich alle Abhängigkeiten in einem lokalen Maven-Repository bereitstellen, das vom root build.gradle referenziert wird. (NB: wenn ich das android-maven-plugin anstelle von grandle verwende, ist die Situation die gleiche).Wie man Firebase-Bibliotheken erhält, z.B. firebase-messaging-9.4.0.jar

Das funktioniert gut, nur habe ich Schwierigkeiten, die Firebase-Bibliotheken wie Firebase-Core-9.4.0.jar oder Firebase-Messaging-9.4.0.jar zu finden. Gemäß der gradle Konsole ausgegeben werden sie in einem Ort gesucht

<server>/com/google/firebase/firebase-messaging/9.4.0/firebase-messaging-9.4.0.jar 

Dieser Ort existiert nicht in den öffentlichen jcenter oder Maven-Repositories.

Weiß jemand, wo man sie findet?

bearbeiten: Ich habe Android Studio auf leeren Caches mit Wireshark beobachtet (mit http für die Jcenter-Repository). Die Ergebnisse sind ziemlich mysteriös. Es gibt eine GET-Anforderung für

http://jcenter.bintray.com/com/google/firebase/firebase-messaging/9.4.0/firebase-messaging-9.4.0.jar

Diese Anfrage

http://repo.jfrog.org/artifactory/libs-release-bintray/com/google/firebase/firebase-messaging/9.4.0/firebase-messaging-9.4.0.jar?referrer

Die letztere GET-Anfrage Ergebnisse in HTTP 404 als repo.jfrog.org Repository umgeleitet wird, hat keinen Inhalt in der Firebase-Messaging/Verzeichnis. Android Studio extrahiert jedoch die JAR-Dateien im Build-Verzeichnis und erstellt weiterhin das Projekt. Es ist unklar, woher die JAR-Dateien stammen.

+0

Sie die angegebene JAR-Datei haben Sie? Könnten Sie Ihre build.gradle-Datei posten? –

+0

Außerdem bin ich mir nicht sicher, ob ich genau verstehe, was du machen willst. Fügen Sie das Glas zu einem lokalen Maven-Repository hinzu? Fügen Sie den Verweis auf das Jar in Ihrer Build-Datei hinzu? –

+0

Vielleicht könnte das helfen: https://firebase.google.com/docs/android/setup –

Antwort

1

Nach this, sollten Sie in den Ihnen build.gradle:

buildscript { 
    // ... 
    dependencies { 
     // ... 
     classpath 'com.google.gms:google-services:3.1.1' 

und dass auf Ihre app/build.gradle:

apply plugin: 'com.android.application' 

android { 
    // ... 
} 

dependencies { 
    // ... 
    compile 'com.google.firebase:firebase-core:11.8.0' 
    // Getting a "Could not find" error? Make sure you have 
    // the latest Google Repository in the Android SDK manager 
} 

// ADD THIS AT THE BOTTOM 
apply plugin: 'com.google.gms.google-services' 
+0

Ich bin mir dessen bewusst, und zum Erstellen der APK aus Android Studio meine Gradle-Dateien genau so aussehen, und es funktioniert. – Martin

+0

Was ich versuche, ist jedoch ein automatisierter Build in einer Sandbox-Umgebung. Dazu ändere ich den root build.gradle so, dass er nicht mehr auf jcenter.bintray.com verweist, sondern auf einen internen repository. Damit dies funktioniert, müssen alle externen Abhängigkeiten einschließlich der Firebase-Bibliotheken in das interne Repository kopiert werden. Ich kann die meisten externen Abhängigkeiten finden, aber nicht die Firebase-Bibliotheken. Daher meine Frage. – Martin

1

Sie alle librarys im oficial Unterstützung zeigen .

https://firebase.google.com/docs/android/setup

+1

Sie können hier auch Librarys herunterladen: http://mvnrepository.com/artifact/com.Firebase –

+0

Danke, aber sein ist nicht der richtige Ort. Die build.gradle-Abhängigkeit bezieht sich auf etwas mit groupId "com.google.firebase" und artifactId "firebase-messaging". Dies ist auf mvnrepository.com nicht verfügbar. – Martin

Verwandte Themen