... the user friendly GPS tool


Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Probleme beim Start & Debugging in Eclipse
#1
Sad 
Hallo Entwickler des RouteConverter,

ich nutze stets die aktuellste Version des Programms zur Verarbeitung der GPS-Daten meines Logging-Moduls, das ich im Auto installiert habe. Das "fertige Programm", d.h. der auf dieser Homepage angebotene Download hast noch nie versagt - TOP Arbeit !

Da ich häufiger Kopien von einzelnen Datensätzen machen will (z.B. zur Eingabe in Google Earth), nutze ich die entsprechende Funktion sehr intensiv.
Ich wollte die Implementierung der Methode zum Ablegen der Daten im Clipboard 'mal genauer ansehen, um die Ausgabe der Koordinaten anzupassen (derzeit wird die östliche Länge stets vor der nördliche Breite kopiert).
Hier zunächst die Angaben zur meinem Computer, auf dem ich die Applikation anhand des Sourcecodes starten will:
Betriebssystem: Windows 8 Professional (64-Bit); Entwicklungsumgebung: Eclipse Juno; Java-SDK: Version 7 Update 25
Ich bin zwar ein Java-Entwickler, jedoch reichen meine Kentnisse bei Weitem nicht an die Kenntnisse heran, die von den Entwicklern hier als normal angesehen werden. Ich habe z.B. noch nie von "Maven" gehört und auch die Komplexität (diverse abstrakte Klassen, Casting, etc.) des Codes kann ich nicht verstehen. Dennoch ist es mir aufgrund der Anleitung im GIT-Repository gelungen, alle notwendigen Komponenten in Eclipse zu integrieren. Beim "Installieren" des Sourcecodes aus diversen Online-Datenbanken kommt es jedoch immer wieder zum folgenden Fehler:

Code:
Plugin execution not covered by lifecycle configuration: org.codehaus.mojo:native2ascii-maven-plugin:1.0-beta-1:native2ascii (execution: default, phase: process-classes)

Der Fehler tritt beim "execution"-Tag der POM-Datei "route-converter/pom.xml" auf.
Auch nach längerer Internet-Recherche war es mir nicht möglich, die entsprechende Plugin-Einbindung korrekt anzupassen. Schließlich habe ich das Plugin durch Eclipse "ausgeschaltet", d.h. es wurde ab diesem Zeitpunkt ignoriert.
Ich wollte die Applikation anschließend starten. Dabei nutzte ich die "Variante", deren Verzeichnis-Name "RouteConverterWindows" ist. Für den Compiling-Vorgang wählte ich die Einstellung "Marven test". Doch es wurde sofort dieser weitere Fehler ausgegeben:

Code:
Failed to execute goal on project route-converter: Could not resolve dependencies for project slash.navigation:route-converter:jar:2.11-SNAPSHOT: The following artifacts could not be resolved: slash.navigation:catalog:jar:2.11-SNAPSHOT, slash.navigation:common:jar:2.11-SNAPSHOT, slash.navigation:common:jar:tests:2.11-SNAPSHOT, slash.navigation:common-gui:jar:2.11-SNAPSHOT, slash.navigation:common-navigation:jar:2.11-SNAPSHOT, slash.navigation:profileview:jar:2.11-SNAPSHOT, slash.navigation:feedback:jar:2.11-SNAPSHOT, slash.navigation:geonames:jar:2.11-SNAPSHOT, slash.navigation:googlemaps:jar:2.11-SNAPSHOT, slash.navigation:mapview:jar:2.11-SNAPSHOT, slash.navigation:navigation-formats:jar:2.11-SNAPSHOT, slash.navigation:position-completer:jar:2.11-SNAPSHOT, slash.navigation:rest:jar:2.11-SNAPSHOT: Failure to find slash.navigation:catalog:jar:2.11-SNAPSHOT in http://www.routeconverter.com/svn/RouteThirdParty was cached in the local repository, resolution will not be reattempted until the update interval of routeconverter-thirdparty has elapsed or updates are forced -> [Help 1]

Im Rahmen diverser weiterer Startversuche spuckte Eclipse auch diese Fehlermeldung aus:

Code:
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 0
    at chrriis.dj.nativeswing.swtimpl.core.SWTNativeInterface$OutProcess.runNativeSide(SWTNativeInterface.java:1153)
    at chrriis.dj.nativeswing.swtimpl.core.SWTNativeInterface.main_(SWTNativeInterface.java:1460)
    at chrriis.dj.nativeswing.swtimpl.NativeInterface.main(NativeInterface.java:224)

Da meine Kenntnisse, wie bereits zuvor erwähnt, viel zu gering sind, um die Ursache der Fehler zu analysieren, hoffe ich hier auf Hilfe. Sofern jemand sich findet, der die bereit ist, die Problematik zu analysieren und mir eine kurze Erklärung zu geben, wäre ich sehr dankbar. Falls ich die Änderung / Anpassung des Kopier-Vorgangs letztendlich selbst umsetzen könnte, hätte ich einen Grund, die Entwickler hier nicht um weitere Gefallen bitten zu müssen.


Vielen Dank für die Bemühungen im Voraus !

Andreas Hüller
Reply
#2
Warum willst Du das mit Eclipse machen?
IDEA IntelliJ läßt sich meist wesentlich einfacher benutzen und man bekommt damit RouteConverter recht entspannt zum Fliegen.

Falls Du doch noch Eclipse bewegst RC zu starten dann berichte bitte wie Du es gemacht hast.

Gruß,

Ilmari

Grüße,
Ilmari
Reply
#3
Kennst Du diese Seite: http://www.routeconverter.com/faq/prefac...wickeln/en

Nach dieser Anleitung sollte es funktionieren, zumindest hat es das mal bei mir so funktioniert.
Reply
#4
(21.07.2013, 21:44)FNWMedia Wrote:
Code:
Plugin execution not covered by lifecycle configuration: org.codehaus.mojo:native2ascii-maven-plugin:1.0-beta-1:native2ascii (execution: default, phase: process-classes)

Der Fehler tritt beim "execution"-Tag der POM-Datei "route-converter/pom.xml" auf.

Du führst maven mit der Phase test aus - das native2ascii-maven-plugin arbeitet aber erst in der Phase package. Lies Dir am Besten den Maven Build Lifecycle durch.

(21.07.2013, 21:44)FNWMedia Wrote: Auch nach längerer Internet-Recherche war es mir nicht möglich, die entsprechende Plugin-Einbindung korrekt anzupassen. Schließlich habe ich das Plugin durch Eclipse "ausgeschaltet", d.h. es wurde ab diesem Zeitpunkt ignoriert.

Damit fehlen Dir die UTF-8 Resource Bundles.

(21.07.2013, 21:44)FNWMedia Wrote:
Code:
Failed to execute goal on project route-converter: Could not resolve dependencies for project slash.navigation:route-converter:jar:2.11-SNAPSHOT: The following artifacts could not be resolved: slash.navigation:catalog:jar:2.11-SNAPSHOT, slash.navigation:common:jar:2.11-SNAPSHOT, slash.navigation:common:jar:tests:2.11-SNAPSHOT, slash.navigation:common-gui:jar:2.11-SNAPSHOT, slash.navigation:common-navigation:jar:2.11-SNAPSHOT, slash.navigation:profileview:jar:2.11-SNAPSHOT, slash.navigation:feedback:jar:2.11-SNAPSHOT, slash.navigation:geonames:jar:2.11-SNAPSHOT, slash.navigation:googlemaps:jar:2.11-SNAPSHOT, slash.navigation:mapview:jar:2.11-SNAPSHOT, slash.navigation:navigation-formats:jar:2.11-SNAPSHOT, slash.navigation:position-completer:jar:2.11-SNAPSHOT, slash.navigation:rest:jar:2.11-SNAPSHOT: Failure to find slash.navigation:catalog:jar:2.11-SNAPSHOT in http://www.routeconverter.com/svn/RouteThirdParty was cached in the local repository, resolution will not be reattempted until the update interval of routeconverter-thirdparty has elapsed or updates are forced -> [Help 1]

Das hängt wieder daran, daß Du die Phase test und nicht package oder install nimmst. Da wird halt viel weniger gebaut/ausgeführt. package inkludiert test, also gibt es keinen Grund, den build für test zu optimieren.
--
Christian
Reply
#5
Smile 
Vielen Dank für die schnellen Antworten und den Support. Insbesondere, dass der Administrator mir antwortet beeindruckt mich - SUPER !
Dennoch zweifle ich leider langsam an meiner generellen Fähigkeit / Kopmpetenz als Programmierer. Ich bekomme die Applikation immer noch nicht in Eclipse zum Laufen. Vermutlich fehlt mir einfach zu viel Wissen, um hier noch etwas tun zu können - schade.
Ich hätte das Programm sehr gerne einmal im Debugging-Modus betrieben, aber auch die Einstellung "Maven install" sowie "Maven build" brachten keinerlei Änderung der auftretenden Fehler. Mir fiel in diesem Zusammenhang aber auch auf, dass es das Eclipse-Addon "m2eclipse" mittlerweile nicht mehr (im "Eclipse Marketplace") gibt. Es kann nun nur noch ein Addon mit dem Namen "Maven Integration for Eclipse" gewählt werden. Nach der Integration erscheinen hierfür seltsamerweise gleich 2 Einträge. Der erste heißt wie der zuvor gewählte Name; der zweite trägt zusätzlich noch die Bezeichnung "WTP", was vermutlich für Web Tools Platform steht. Anhand der kurzen Beschreibung des Addons lässt sich erkennen, dass für "m2eclipse" wohl in letzter Zeit ein Wechsel zur "Eclipse Foundation" stattgefunden hat.
Bis jetzt ist mir - trotz Nachlesen auf der verlinkten Apache-Webseite - noch absolut unklar, weshalb der in meinem ersten Eintrag erwähnte Fehler in der "POM.xml" bereits beim Importieren der Daten auftritt.
Für das "native2ascii"-Plugin wird während des Import-Vorgangs bereits eine Fehlermeldung ausgegeben, sodass das Plugin meiner Meinung nach schon fehlerhaft aus dem Internet geladen wird.

Ich habe nun vom Herunterladen bis zum Start der Applikation (sowohl Debug-Modus als auch simples Ausführen) folgende Schritte durchgeführt:
- File - Import - Existing Maven Projects
- Auswahl des Root-Verzeichnisses; es folgt die Verarbeitung der "POM"-Dateien (Downloads)
- Als "Haupt-Ordner" des Projekts wird der String "slash.navigation:RouteConverter:2.11-SNAPSHOT:pom" angezeigt - alle Checkboxen sind ausgewählt
- Anklicken des "Next"-Buttons
- Es erscheint der Dialog mit der Benennung "Maven Plugin Connectors"
- Die Einträge lauten "maven-compiler-plugin:3.1:compile", "maven-compiler-plugin:3.1:compile" und "native2ascii-maven-plugin:1.0-beta-1:native2ascii"
- Der letzte Eintrag (native2ascii) ist als Fehler markiert - die Meldung lautet "No marketplace entries found to handle native2ascii-maven-plugin:1.0-beta-1:native2ascii in Eclipse. Please see Help for more information."
[Bedeutet das, dass Eclipse überhaupt nicht mehr kompatibel zur Anwendung ist ? Dann muss ich wohl aufgeben, denn ich kenne nur Eclipse und die Einarbeitung in eine neue Entwicklungs-Umgebung würde sehr viel Zeit in Anspruch nehmen. Diese kann ich aufgrund meines Berufs als Informatiker leider erst sehr langsam aufbringen.]
- Klick auf "Finish". Es erscheint eine Bestätigungs-Meldung, dass das "native2ascii"-Plugin nicht korrekt integriert werden kann
- Diverse Dateien werden heruntergeladen und danach sieht meine "Package Explorer"-Ansicht wie in angehängten Bild zu sehen ist aus

[Image: RouteConverterEclipse.png]

Nachdem die "Integration" der Applikations-Daten abgeschlossen ist, wird die folgende Fehlermeldung in der Konsole angezeigt:
Code:
SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
SLF4J: Defaulting to no-operation (NOP) logger implementation
SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.
[INFO] Scanning for projects...
[INFO]                                                                        
[INFO] ------------------------------------------------------------------------
[INFO] Building The RouteConverter UI tool for Windows 2.11-SNAPSHOT
[INFO] ------------------------------------------------------------------------
[WARNING] The POM for slash.navigation:route-converter:jar:2.11-SNAPSHOT is missing, no dependency information available
[WARNING] The POM for slash.navigation:swt-mapview:jar:2.11-SNAPSHOT is missing, no dependency information available
[WARNING] The POM for slash.navigation:route-converter-license:jar:2.11-SNAPSHOT is missing, no dependency information available
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 0.439s
[INFO] Finished at: Fri Jul 26 22:48:12 CEST 2013
[INFO] Final Memory: 3M/15M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal on project RouteConverterWindows: Could not resolve dependencies for project slash.navigation:RouteConverterWindows:jar:2.11-SNAPSHOT: The following artifacts could not be resolved: slash.navigation:route-converter:jar:2.11-SNAPSHOT, slash.navigation:swt-mapview:jar:2.11-SNAPSHOT, slash.navigation:route-converter-license:jar:2.11-SNAPSHOT: Failure to find slash.navigation:route-converter:jar:2.11-SNAPSHOT in http://www.routeconverter.com/svn/RouteThirdParty was cached in the local repository, resolution will not be reattempted until the update interval of routeconverter-thirdparty has elapsed or updates are forced -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/DependencyResolutionException

Ich frage mich nun, auf welchen der vielen Einträge im "Package Explorer" ich zum Starten / Debuggen klicken soll. Ich entscheide mich zunächst für "route-converter". Denn dort "fehlt" das Plugin, was ja laut Antwort des Administrators hier im Forum beim Starten / Debuggen im "Maven install"-Modus laufen soll. Ich klicke den Button "Debug" an und wähle dann "Debug as - Maven install".
Die oben bereits aufgeführte Fehlermeldung wird nun noch umfangreicher. Es stehen noch mehr nicht ladbare POMs auf der Liste von Warnungen. Auch beim "normalen" Start über den Button "Run" ändert sich nichts hieran. Ich wechsle nun zum Eintrag "RouteConverterWindows" und versuche dort mein Glück - gleiches ernüchterndes Ergebnis.
Auch der Versuch der Einrichtung einer "Debug Configuration" führt nicht zum Erfolg. Ich lege eine "Maven Build"-Konfiguration an, doch kann anhand des Buttons "Goals" keine Einträge auswählen, obwohl der Vorgang ca. 10 Sekunden dauert.

Daher habe ich folgende weitere Fragen (sie wirken bestimmt für einen erfahrenen Entwickler dümmlich):
- Was bedeutet diese seltsame, in der obigen Fehlermeldung als erste Zeilen ausgewiesene Meldung bezüglich "SLF4J" ? Muss hier noch etwa installiert werden ?
- Was ist der Unterschied zwischen den Einträgen "route-converter", "RouteConverter" und "RouteConverterWindows" ? Welche Variante ist das "Standard-Entwicklungssystem" ?
- Warum werden beim Erstellen einer "Debug Configuration" keinerlei "Goals" für alle oben genannten Varianten angezeigt ? Das Programm lässt sich somit nicht debuggen
- Wie ist der beim Herunterladen der Daten bereits auftretende Fehler bezüglich des "native2ascii"-Plugins zu werten ? Ist das normal und korrekt ?
- Muss ich neben den Schritten in der Readme-Datei auf GitHub (u.a. Einrichtung von benötigten Umgebungsvariablen) noch weitere Vorbereitungen treffen ?
- Kann die Installation des Eclipse-Addons "Maven Integration for Eclipse" anstelle des in der Readme-Datei genannten "m2eclipse" zu Fehlern führen ? Wenn ja, was kann ich stattdessen nutzen ?

Ich hoffe, nochmal Hilfe zu bekommen. Doch es ist mir auch klar, dass es vermutlich zu lange dauern wird, mir all das benötigte Wissen zu vermitteln. Sad Ich gebe dann auf, was mich depressiv stimmt, da man hier meinerseits nicht mehr von Kompetenz als Programmierer sprechen kann.
Hier nochmals meine (leicht veränderte) Entwicklungsumgebung:
- Eclipse Juno (4.2.1)
- Windows 8 Professional
- Maven 3.0.4 Embedded
- JRE 7 Update 10 (32 bit)
- JDK 6 Update 45 (32 bit) - hier war bislang die Version 7 Update 25 als 64 bit-Variante installiert
Das "Downgrade" der JDK-Version habe ich extra durchgeführt, da in der Readme-Datei diese Version erwähnt ist
Reply
#6
(26.07.2013, 23:09)FNWMedia Wrote: - Kann die Installation des Eclipse-Addons "Maven Integration for Eclipse" anstelle des in der Readme-Datei genannten "m2eclipse" zu Fehlern führen ? Wenn ja, was kann ich stattdessen nutzen ?

Mir ist es damals nur gelungen RouteConverter mit dem m2eclipse einfach zum Laufen zu bringen. Mit anderen Plugins hat es nicht sofort funktioniert, ich konnte auch jeweils mein vorgehen nicht reproduzieren wenn es dann mal geklappt hat.

Laut dieser Seite http://www.eclipse.org/m2e/download/ ist das Plugin für die 4.2 Version verfügbar. Nur komischerweise funktioniert der empfohlene Link nicht. Der Latest funktioniert aber. Am einfachsten ist es, wenn Du in Eclipse auf help|install new software gehst und dort den link "http://nexus.tesla.io:8081/nexus/content/sites/m2e.extras/m2e/1.5.0/N/LATEST/" eingibst.

Wenn die Voraussetzungen dann stimmen, funktioniert der Rest der Beschreibung und Du wirst RouteConverter debuggen können.
Reply
#7
Big Grin 
Erst einmal sorry wegen der langen Antwort-Verzögerung meinerseits.

Nachdem ich zunächst das von EddiVonDerAlm empfohlene m2eclipse-Plugin über die genannten URL installiert habe und anschließend nochmal die bereits zuvor genannte Schritt-für-Schritt-Anleitung unter http://www.routeconverter.com/faq/prefac...wickeln/en durchgegangen bin funktioniert es nun endlich mit dem Kompilieren auf meinem Rechner ! Smile

Komischerweise konnte ich das in der Schritt-für-Schritt-Anleitung genannte m2e-egit erst installieren, nachdem ich das zuvor (ganz gemäß Anweisung) installierte EGit wieder komplett entfernt hatte, da Eclipse sonst einen Konflikt zwischen diesen beiden Komponenten meldete (only one of the following components can be installed).
Darüber hinaus ist auch der Fehler mit dem native2ascii-maven-plugin weiterhin geblieben (gleiche Fehlermeldung während der Installation über GIT: "No marketplace entries found to handle native2ascii-maven-plugin:1.0-beta-1:native2ascii in Eclipse.")
Infolgedessen ist auch die POM-Datei route-converter/pom.xml nach Download des Sourcecodes von RouteConverter weiterhin als fehlerhaft (rotes X) markiert...

Nichtsdestotrotz lässt sich das Programm nun seltsamerweise ohne eine Fehlermeldung kompilieren, wenn ich zuvor die in der Schritt-für-Schritt-Anleitung unter Start RouteConverter out of Eclipse genannten Schritte ausführe. Somit kann das eigentliche Problem als gelöst betrachtet werden ! Smile

Vielen Dank nochmal speziell an EddiVonDerAlm sowie den Administrator für die Hilfe. Ich werde nun einmal versuchen, die von mir gewünschte minimale Änderung umzusetzen...
Reply
#8
(31.07.2013, 21:55)FNWMedia Wrote: Ich werde nun einmal versuchen, die von mir gewünschte minimale Änderung umzusetzen...

Was hast Du denn vor?
--
Christian
Reply
#9
Ich beabsichtige lediglich, die "Formatierung" bei Übernahme von Positionsdaten aus der Positionsliste in die Zwischenablage (Anklicken eines Eintrags, dann Strg+C) derart zu ändern, dass ich die GPS-Koordinaten 1:1 nach Google Maps übernehmen kann.
Aktuell sind hier leider Längen- und Breitengrad "vertauscht", d.h. RouteConverter spuckt hier beispielsweise immer zuerst den Längengrad aus (z.B. 7.027031,49.248983), während Google Maps an erster Stelle den Breitengrad erwartet (z.B. 49.248983,7.027031).

Ich gehe davon aus, dass ich diese Minimalanpassung auch ohne tiefergehende Kenntnisse des Programmcodes kurzfristig realisieren kann, da hierfür nur die entsprechende Funktion angepasst werden muss.

Diese Vereinfachung des Copy & Paste-Vorgangs würde mir enorm beim Benennen meiner Urlaubsbilder helfen, da ich in meinem PKW einen GPS-Logger verbaut habe, welcher jede Sekunde die Position speichert.
Noch genialer wäre eine Funktion "Show in Google Maps" (vgl. Google Earth) beim Rechtsklick auf eine Position in der Positionsliste - aber hier sehe ich mich kurzfristig außer Stande, eine derartige "Erweiterung" in das bestehende Programm zu integrieren.

Der Vorteil einer Ansicht in Google Maps ist, dass man hier auch Orte und Postleitzahlen über die Funktion "Was ist hier?" genannt bekommt und darüber hinaus in die Panoramio-Ansicht wechseln kann, um den eigenen Schnappschuss mit denen anderer Leute "zu vergleichen".
Reply
#10
(01.08.2013, 13:45)FNWMedia Wrote: Noch genialer wäre eine Funktion "Show in Google Maps" (vgl. Google Earth) beim Rechtsklick auf eine Position in der Positionsliste - aber hier sehe ich mich kurzfristig außer Stande, eine derartige "Erweiterung" in das bestehende Programm zu integrieren.

Das könnte fast einfacher sein als das Copy-Paste-Format zu ändern.
--
Christian
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)