Frage an c#, java, sharpen-tool, converter – Verwenden von Sharpen und Eclipse: Fehler "Anwendung" sharpen.core.application "konnte nicht in der Registrierung gefunden werden."

4
Hintergrund

Ich mache derzeit einen Benchmark von Lösungen, um Java-Code in c # zu konvertieren. Wir haben eine sich schnell entwickelnde Java-Software und wollen keine APIs mit niedriger Ebene (nicht UI) mit einem Tool portieren, da sich die Beibehaltung aller Änderungen zwischen den Versionen als sehr mühsam erweisen könnte Wie auch immer, ich habe versucht, Sharpen zu verwenden, da ich gehört habe, dass es ein ziemlich böses Werkzeug ist, das von einigen Mono-"Freaks" verwendet wird, um einige Versionen ihrer Werkzeuge in Schach zu halten.

Was ich getan habeZu diesem Zweck habe ich einige Tutorials aus dem Internet ausprobiert, die am einfachsten zu verstehen sindhttp://www.pauldb.me/post/14916717048/a-guide-to-sharpen-a-great-tool-for-converting-javaDa der Link, den er für ein vorab erstelltes Sharpen-Plugin gibt, jetzt nicht mehr funktioniert, baue ich meine eigene Version des Plugins unter Verwendung der Quellen und Anweisungen, die hier zu finden sind:https://github.com/xamarin/XobotOS/Ergebnis

Das Plugin ist perfekt aufgebaut und in meinem Eclipse-Ordner installiert. Aber wenn ich versuche, das ant-Skript auszuführen, nachdem ich alles eingerichtet habe, erhalte ich eine Fehlermeldung:

java.lang.RuntimeException: Die Anwendung "sharpen.core.application" wurde nicht in der Registrierung gefunden.

Fazit

Gut. Ich bin hier verloren. Ich habe keine Ahnung was das heißt.

Ich benutze Windows 7 64bitIch verwende Eclipse 3.7Ich benutze Java 6 SDK 64 Bit

Wenn jemand darauf stößt und eine Lösung hat ... Das ist hilfreich.

Danke im Voraus.

Deine Antwort

1   die antwort
6

Anfangs habe ich den gleichen Ansatz wie Sie versucht, mit dem gleichen Ergebnis. Aber wenn Sie die Anweisungen in der folgenREADME.build Datei, AbschnittDinge einrichtensollten Sie in der Lage sein, eine sekundäre Eclipse-Anwendung mit den enthaltenen Plug-Ins sharpen.core und sharpen.xobotos zu starten.

Sie können dann Ihr Java-Projekt, das konvertiert werden soll, in die sekundäre Eclipse-App importieren, vorausgesetzt, Sie haben einen Sharpen Xobot-Builder-Befehl und die zugehörige Art in Ihre Projektdatei aufgenommen.Projekt Datei im XobotOS / android Ordner. Ich habe die .project-Datei vor dem Import des Projekts manuell bearbeitet, aber ich gehe davon aus, dass Sie dies auch in Eclipse konfigurieren können.

Die Konfigurationsdateien vonPaul Du Bois sind nicht anwendbar, stattdessen müssen Sie die kopieren und bearbeitenconverter-config.xml Datei aus dem XobotOS / Android-Ordner. Diese Datei verweist wiederum auf eine Datei in derApp Unterordner, der wahrscheinlich auch kopiert und bearbeitet werden muss.

Dies ist im Grunde so weit, wie ich es bis jetzt geschafft habe. Ich konnte die Konfigurationsdateien bearbeiten, um die Ausführung des Konverters zu ermöglichen, aber zu diesem Zeitpunkt konnte ich nur C # -Stubs generieren. Wenn Sie oder jemand anderes dies noch weiter bringt, würde ich mich freuen zu lernen, wie man mit dem XobotOS Sharpen-Konverter echte C # -Dateien erzeugt.

AKTUALISIEREN

Fragen Sie Miguel de Icaza, ob Anweisungen zum Konvertieren beliebiger Java-Projekte mit der XobotOS Sharpen-Version vorhanden sind. Er antwortete, dass diese Version viele fest codierte Details enthält, die es schwierig machen, sie auf beliebige Projekte anzuwenden. In dieser Phase empfiehlt erLluis Sanchez Schärfen Version, die stattdessen verwendet werden soll.

Übrigens wurde die NGit-Bibliothek in verschobenHier. Sie finden eine voll funktionsfähigePlug-In schärfen für Eclipse im Unterordner gen / plugins.

UPDATE 17. MAI

Beachten Sie, dass Sie das haben müssenPlug-in-Entwicklungsumgebung In Eclipse installierte Software zum Erstellen und Ausführen der Plug-in-Projekte. WENN du rennstEclipse IDE für Java (SE) -Entwicklermüssen Sie es mit der PDE-Software erweitern.

Männer, war ich müde: Mein Satz oben ist nicht richtig Deutsch: P Fügen Sie in der Datei api-def.xml jedes Paket als Namespace hinzu (und verwenden Sie es nicht), und geben Sie Folgendes ein: <Namespace-Name = "com.redwarp .test "output =" / output / sharpen "> Die Ausgabe gibt an, wie sie behandelt werden soll. Wenn Sie keine Dokumente möchten, geben Sie output = "/ output / sharpen-no-docs" usw. ein. Redwarp
Eigentlich hatte ich etwas Erfolg! Ich habe herausgefunden, dass ich das Plugin falsch installiert habe, hense Eclipse-Reaktion. Ich habe so viele Versionen von Sharpen ausprobiert, dass es zu Konflikten kam. Am Ende habe ich alles gesäubert und es dann mit Luis Sharpen und Xobotos Sharpen zum Laufen gebracht. Wenn Sie nicht stubben wollen, müssen Sie jedes Paket als Namespace in der converter-config.xml-Datei verwenden ... Nun, die Lösung, die ich mir ausgedacht habe, könnte auch anders aussehen. Redwarp
Was bedeutet das?i.stack.imgur.com/SXik4.png Andrii
Interessant! Ich werde Ihre Vorgehensweise so schnell wie möglich ausprobieren und prüfen, ob auch ich Stubs vermeiden kann. Vielen Dank! Anders Gustafsson
@ Redwarp, ich bin froh, dass du herausgefunden hast, wie das geht, aber ich bin immer noch verloren. Ich habe das kopiertsharpen.core_1.0.0.jar Datei von ngit zu Eclipseplugin Ordner, aber ich habe keine Ahnung, wie man es tatsächlich in Eclipse verwendet. Diese ganze Tortur hat mich dazu gebracht, die Java-Entwicklung mehr zu hassen, als ich es mir jemals vorgestellt hatte. Alles auf den Seiten von db4o ist veraltet und unvollständig, und ich kann keine Anleitung finden, wie man alles macht, was zum Konvertieren eines einfachen Elements erforderlich ist.java Datei zu einem.cs Datei. :( Asbjørn Ulsberg

Verwandte Fragen