Gibt es eine Möglichkeit, ein Eclipse-basiertes Java-Projekt über die Befehlszeile zu kompilieren?
Ich versuche, meinen Build zu automatisieren (mit FinalBuilder, nicht mit Ant), und ich bin weder Java- noch Eclipse-Experte. Ich kann wahrscheinlich herausfinden, wie dies mit geraden Java-Befehlszeilenoptionen gemacht wird, aber dann fühlt sich das Eclipse-Projekt wie eine Menge verschwendeter Mühe an.
Gibt es eine Möglichkeit, die erforderliche Java-Befehlszeile aus Eclipse heraus zu generieren, falls es keine Möglichkeit gibt, ein Eclipse-Projekt über die Befehlszeile zu kompilieren? Oder gibt es einige Dateien, in denen ich stöbern kann, um die Kompilierungsschritte zu finden, die hinter den Kulissen ausgeführt werden?
Leute, ich suche nach einer Antwort, die KEINE Ameise enthält. Lassen Sie mich die ursprüngliche Frage noch einmal wiederholen. Gibt es eine Möglichkeit, ein Eclipse-Projekt über die Befehlszeile zu erstellen?
Ich denke nicht, dass dies eine unvernünftige Frage ist, da ich so etwas für Visual Studio tun kann:
devenv.exe /build "Debug|Any CPU" "C:\Projects\MyProject\source\MyProject.sln"
quelle
Antworten:
Sie können ein Eclipse-Projekt über einen Arbeitsbereich über die Befehlszeile erstellen:
Es verwendet das
jdt apt
Plugin, um Ihren Arbeitsbereich automatisch zu erstellen. Dies wird auch als "Headless Build" bezeichnet. Verdammt schwer herauszufinden. Wenn Sie keine win32-Exe verwenden, können Sie Folgendes versuchen:Aktualisieren
Vor einigen Jahren wurde die Sonnenfinsternis durch
startup.jar
den "Equinox Launcher" ersetzt.https://wiki.eclipse.org/Equinox_Launcher
Auf Eclipse Mars (MacOX):
Der
-data
Parameter gibt den Speicherort Ihres Arbeitsbereichs an.Die Versionsnummer für den Equinox-Launcher hängt davon ab, welche Version von Eclipse Sie haben.
quelle
Um die Antwort von André zu vervollständigen, könnte eine Ameisenlösung wie die in Emacs, JDEE, Ant und dem Eclipse Java Compiler beschriebene sein , wie in:
Mit dem compilerarg-Element können Sie auch zusätzliche Befehlszeilenargumente an den Eclipse-Compiler übergeben.
Sie finden eine vollständiges Ant-Skript-Beispiel, das in einer Befehlszeile aufgerufen wird mit:
ABER alles, was mit Ameisen zu tun hat, ist nicht das, wonach Keith strebt.
Eine Batch-Kompilierung finden Sie unter Kompilieren von Java-Code , insbesondere im Abschnitt " Verwenden des Batch-Compilers ".
Ausführen des Batch-Compilers Über die Befehlszeile würde geben
oder:
Alle Java-Kompilierungsoptionen werden auch in diesem Abschnitt beschrieben.
Der Unterschied zur Visual Studio-Befehlszeilenkompilierungsfunktion besteht darin, dass Eclipse das .project und den .classpath nicht direkt in einem Befehlszeilenargument zu lesen scheint . Sie müssen alle im .project und .classpath enthaltenen Informationen in verschiedenen Befehlszeilenoptionen melden, um das gleiche Kompilierungsergebnis zu erzielen.
Die kurze Antwort lautet also: "Ja, Eclipse tut es irgendwie." ;)
quelle
Nach 27 Jahren ist es mir auch unangenehm, mich in einer IDE zu entwickeln. Ich habe diese Vorschläge (oben) ausprobiert - und wahrscheinlich nicht alles richtig verfolgt -, also habe ich eine Websuche durchgeführt und unter ' http://incise.org/android-development-on-the- command-line.html '.
Die Antwort schien eine Kombination aller oben genannten Antworten zu sein (bitte sagen Sie mir, wenn ich falsch liege, und akzeptieren Sie meine Entschuldigung, wenn ja).
Wie oben erwähnt, erstellt eclipse / adt nicht die erforderlichen Ant-Dateien. So kompilieren Sie ohne Eclipse-IDE (und ohne Ant-Skripte):
1) Generieren Sie build.xml in Ihrem obersten Verzeichnis:
2) Als nächstes kompiliere ich das Projekt. Ich war ein wenig verwirrt von der Bitte, 'Ameise' nicht zu verwenden. Hoffentlich bedeutete der Anforderer, dass er keine Ameisenskripte schreiben wollte. Ich sage dies, weil der nächste Schritt darin besteht, die Anwendung mit ant zu kompilieren
3) Um die apk auf dem Gerät zu installieren, musste ich ant erneut verwenden:
4) Um das Projekt auf meinem Android-Handy auszuführen, benutze ich adb.
3A) Eine Randnotiz: Um das Protokoll vom Gerät aus anzuzeigen, verwenden Sie:
3B) Eine zweite Randnotiz: Der oben erwähnte Link enthält auch Anweisungen zum Erstellen des gesamten Projekts aus dem Befehl.
Hoffentlich hilft dies bei der Frage. Ich weiß, dass ich mich sehr gefreut habe, hier etwas zu diesem Thema zu finden.
quelle
ant installd
ohne Gebäude installierenDer normale Ansatz funktioniert umgekehrt: Sie erstellen Ihren Build basierend auf Maven oder Ant und verwenden dann Integrationen für die IDE Ihrer Wahl, damit Sie unabhängig davon sind. Wichtig, wenn Sie versuchen, neue Teammitglieder auf den neuesten Stand zu bringen oder einen umstrittenen Integrationsserver für automatisierte Builds zu verwenden. Ich empfehle, Maven zu verwenden und das schwere Heben für Sie erledigen zu lassen. Erstellen Sie eine POM-Datei und generieren Sie das Eclipse-Projekt über mvn eclipse: eclipse. HTH
quelle
Diese Frage enthält einige nützliche Links zu Headless-Builds, die jedoch hauptsächlich auf das Erstellen von Plugins ausgerichtet sind. Ich bin mir nicht sicher, wie viel davon auf reine Java-Projekte angewendet werden kann.
quelle
Ich wollte nur meine zwei Cent dazu addieren. Ich habe versucht, das zu tun, was @Kieveli für nicht win32 vorgeschlagen hat (siehe unten), aber es hat bei mir nicht funktioniert (unter CentOS mit Eclipse: Luna):
Bei meinem speziellen Setup unter CentOS mit Eclipse (Luna) hat dies funktioniert:
Die Ausgabe sollte ungefähr so aussehen:
Ich bin mir nicht ganz sicher, warum es anscheinend zweimal passiert ist, aber es scheint zu funktionieren.
quelle
Hallo Nur Ergänzung zu VonC-Kommentaren. Ich verwende den ecj-Compiler, um mein Projekt zu kompilieren. Es war zu erwarten, dass einige der Klassen nicht gefunden wurden. Aber das Projekt lief gut mit Javac Compiler.
Also habe ich einfach die Klassen in den Klassenpfad eingefügt (den wir als Argument übergeben müssen) und jetzt funktioniert es einwandfrei ... :)
Kulbir Singh
quelle
Kurze Antwort. Nein. Eclipse verfügt nicht über einen Befehlszeilenschalter wie Visual Studio zum Erstellen eines Projekts.
quelle