Hinzufügen der Bibliothek "Java Client for Google Maps Services" über Eclipse

Hallo,

ich möchte die Entfernung via Google Maps in meinem Java Programm nutzen.Hierfür gibt es bereits eine Bibliothek mit dem Namen „Java Client for Google Maps Services“. Die Installationshinweise sind unter folgendem Link relativ gut beschrieben:

https://github.com/googlemaps/google-maps-services-javaWie man sieht, ist für mich das Problem, dass die Bibliothek in diesem Tutorial über Gradle oder Maven eingebunden wird. Allerdings sind hierzu nur die nötigen Code-Abschnitte enthalten. Ich bin noch ziemlich neu auf dem Gebiet und ratlos, wie ich das mit Gradle oder Maven hinbekommen soll. Auch diverse Tutorial setzen mir persönlich bereits zu viel Wissen über Gradle voraus. Persönlich hab ich Gradle noch nie benutzt.

Gibt es eine andere Lösung, die Bibliothek über Eclipse hinzuzufügen. Bzw. was muss ich tun um dies mit Gradle in Kombination mit Eclipse hinzubekommen (bitte beachten, dass für mich Gradle neu ist)?

Über konstruktive Hilfe wäre ich wirklich sehr froh!
Vielen Dank im Voraus

Hallo,

Gibt es eine andere Lösung, die Bibliothek über Eclipse
hinzuzufügen. Bzw. was muss ich tun um dies mit Gradle in
Kombination mit Eclipse hinzubekommen (bitte beachten, dass
für mich Gradle neu ist)?

Gradle und Maven haben den Vorteil, dass Abhängigkeiten automatisch heruntergeladen werden, was den build-Prozess deutlich vereinfacht. Beide verwenden in der Default-Einstellung folgende Verzeichnisstrutur: https://de.wikipedia.org/wiki/Apache_Maven#Standard-…

Wenn man sich an diese hält ist ein gradle Java-Projekt schnell aufgesetzt. Minimales build-script definiert die Google API als Abhängigkeit (mavenCentral() gibt an von wo diese heruntergeladen werden soll):

apply plugin: 'java'

repositories {
 mavenCentral()
}

dependencies {
 compile 'com.google.maps:google-maps-services:0.1.7'
} 

Die datei build.gradle im Projektverzeichnis, dein Sourcecode in src/main/java, nun reich ein Aufruf gradle jar um den Code zu kompilieren und daraus ein Jar zu erstellen.

$ gradle jar


> compileJava

Download https://repo1.maven.org/maven2/com/google/maps/google-maps-services/0.1.7/google-maps-services-0.1.7.pom
Download https://repo1.maven.org/maven2/com/google/code/gson/gson/2.3.1/gson-2.3.1.pom
Download https://repo1.maven.org/maven2/com/squareup/okhttp/okhttp/2.0.0/okhttp-2.0.0.pom
Download https://repo1.maven.org/maven2/com/squareup/okhttp/parent/2.0.0/parent-2.0.0.pom
Download https://repo1.maven.org/maven2/joda-time/joda-time/2.4/joda-time-2.4.pom
Download https://repo1.maven.org/maven2/com/squareup/okio/okio/1.0.0/okio-1.0.0.pom
Download https://repo1.maven.org/maven2/com/squareup/okio/okio-parent/1.0.0/okio-parent-1.0.0.pom
Download https://repo1.maven.org/maven2/com/google/maps/google-maps-services/0.1.7/google-maps-services-0.1.7.jar
Download https://repo1.maven.org/maven2/com/google/code/gson/gson/2.3.1/gson-2.3.1.jar
Download https://repo1.maven.org/maven2/com/squareup/okhttp/okhttp/2.0.0/okhttp-2.0.0.jar
Download https://repo1.maven.org/maven2/joda-time/joda-time/2.4/joda-time-2.4.jar
Download https://repo1.maven.org/maven2/com/squareup/okio/okio/1.0.0/okio-1.0.0.jar


> processResources UP-TO-DATE  
> classes  
> jar


BUILD SUCCESSFUL

Total time: 7.66 secs 

Fügst du noch ein apply plugin: ‚eclipse‘ ein und gibt gradle eclipse ein, so erzeugt gradle Eclipse Konfigurationsdateien, du kannst das Verzeichnis dann als Eclipse Projekt importieren und alle notwendigen Jars sind bereits im classpath.

Wenn du auf gradle (oder maven) verzichten möchtest kannst du die Jars auch manuell vom Maven Repository herunterladen: http://search.maven.org/#search|ga|1|google-maps-ser…

HTH
Heavy

Hallo,

Mir ist nicht klar wo ich diese in Wikipedia dargestellt
Verzeichnisstruktur erstellen muss. Muss die in das
Java-Projekt in Eclipse, in welchem ich die Bibliothek
benötige, oder wo anders?

Ich arbeite viel auf der Kommandozeile, daher beschreibe ich wie ich normalerweise beim Anlegen eines neuen Projektes vorgehe. Es gibt verschiedene Wege und meines Wissens auch ein gradle Plugin für Eclipse (das ich aber nicht nutze).

Die Verzeichnisstruktur ist im selben Verzeichnis in dem auch die Datei build.gradle liegt. gradle eclipse legt zusätzlich die Dateien .classpath, .project und das Vereichnis .settings an.

Projektverzeichnis
 |`- build.gradle
 |`- .classpath
 |`- .settings
 |`- .project
 |-- src
 |-- main
 |-- java

Anscheinend muss ich die ZIP-Datei unter
https://github.com/googlemaps/google-maps-services-java
nicht herunterladen werden, oder?

Wenn du gradle benutzt werden die JAR Dateien automatisch heruntergeladen. Die ZIP Datei enhält den Google Sourcecode.

Wo genau muss ich den Aufruf: ($ gradle jar) platzieren?

In obigem Projektverzeichnis in dem sich die Datei build.gradle befindet. Das Dollar-Zeichen war der (Linux) prompt, nicht Bestandteil des Befehls, du gibst nur gradle jar ein.

Wie genau erfolgt der Import des Verzeichnisses als
Eclipse-Projekt?

FileImport…Existing Projects into WorkspaceNext.

In Select root directory: wählst du nun das Verzeichnis aus in dem .classpath, .project etc. liegen. Klassen die du erstellst landen dann automatisch im src/main/java Verzeichnis, die Abhängigkeiten sind bereits in Eclipse verfügbar.

Gruß
Heavy

1 Like

… wow vielen Dank für die Antwort! Hat mir vorerst schonmal super weitergeholfen. Allerdings wäre ich trotzdem sehr dankbar wenn du die folgenden Schritte zu den Fragen noch etwas erläutern könntest, dann sollte es auch wirklich klappen.

Mir ist nicht klar wo ich diese in Wikipedia dargestellt Verzeichnisstruktur erstellen muss. Muss die in das Java-Projekt in Eclipse, in welchem ich die Bibliothek benötige, oder wo anders?

Anscheinend muss ich die ZIP-Datei unter
https://github.com/googlemaps/google-maps-services-java
nicht herunterladen werden, oder?

Wo genau muss ich den Aufruf: ($ gradle jar) platzieren?

Wie genau erfolgt der Import des Verzeichnisses als Eclipse-Projekt?

Sorry für die Fragen aber Gradle ist wie erwähnt totales Neuland für mich! Wäre froh über deine Antwort.

Hat super geklappt! Vielen Dank für die Hilfe!