Ich verwende ein Rest-Webservice
in Android
. Die Web Service
könnte JSON
und XML
behandeln, die API wird als XSD
beschrieben. Also habe ich JAXB
verwendet, um Klassen aus dem XSD
zu erzeugen, und dann habe ich den JSON
Prozessor von jackson benutzt, um JSON
von meinen Instanzen zu generieren.
Das Problem ist, dass JAXB
( xjc
) Klassen mit JAXB
Annotationen generiert und Android
diese nicht verarbeiten kann. Ich habe versucht, das jaxb-api.jar
zu meinem Android-Projekt hinzuzufügen, aber das Dalvik wird keine Kernklassen verwenden.
Für meine erste Implementierung habe ich die Annotationen manuell entfernt. Aber jetzt wurde der XSD
aktualisiert und ich möchte das nicht jedes Mal machen, wenn dies passiert.
Haben Sie eine Idee, wie Sie mit diesem Problem besser umgehen können? Gibt es eine Möglichkeit, jaxb/xjc
ohne Anmerkungen zu verwenden oder gibt es einen anderen Code-Generator, der dies tun könnte? Kennen Sie eine einfache Möglichkeit, Anmerkungen aus Java-Klassen zu entfernen (auch wenn sie in mehreren Zeilen gedruckt sind)? Gibt es eine Projekteinstellung für Android
Eclipse
projekte, die den dalvik erlaubt, Core-Bibliotheken zuzulassen?
thx, cathixx
Ich musste ein wenig extra forschen, um die Antwort von cathixx funktionieren zu lassen, seit ich neu bei Ant bin, also werde ich das teilen, um anderen zu helfen.
Diese Anweisungen enthalten Java-Dateien mit Code wie:
%Vor%... und diese Ereignisse kommentieren, so sieht es so aus:
%Vor% Erstellen Sie zuerst eine Datei build.xml
(oder wie immer Sie es nennen möchten - muss .xml sein) in einem neuen Eclipse-Projekt (ein "General" -Projekt ist in Ordnung).
Fügen Sie dann der build.xml
-Datei den folgenden Text hinzu:
Fügen Sie die *.java
-Dateien, die Sie kommentieren möchten, aus den XML-Importen und -Anmerkungen für dasselbe Verzeichnis wie die Datei build.xml heraus.
Klicken Sie mit der rechten Maustaste auf die Datei build.xml in Eclipse und klicken Sie auf "Ausführen als- & gt; Ant Build".
Sie sollten die Ausgabe wie folgt sehen:
%Vor%... und die XML-Importe und -Anmerkungen sollten aus Ihren Dateien kommentiert werden.
Fertig!
Hinweis: Wenn Sie alle *.java
-Dateien in alle Unterverzeichnisse der Datei build.xml einbeziehen möchten (z. B. um alle XML-Anmerkungen / Importe, die für mehrere JAXB-Klassen in mehreren Paketen generiert wurden, auszukommentieren), ändern Sie die fileset
Tag an: