Ant

Java und die Scriptsprachen (z.B. Groovy usw...)

Moderator: wegus

Benutzeravatar
Olek77
Beiträge: 669
Registriert: 21.03.2009, 13:09

Ant

Beitragvon Olek77 » 22.02.2012, 11:49

Hi,

Ich wollte mich mal mit Ant auseinander setzen.

Jetzt habe ich festgestellt, dass Netbeans selber anscheinend auch das compilieren der sources mit ant bewerkstelligt.
Da ich nun eigentlich eine neue build.xml erstellen wollte und diese aber schon existiert weiss ich nicht genau wie ich anfangen soll.

Gibts dafür ein nettes tutorial? In dem Buch "Der Weg zum Java-Profi" ( hab ich jetzt sicher schon 100 mal zitiert ;) und immer noch ohne Geld dafür zu bekommen ),
wird auch dieses Thema behandelt. Der Autor geht aber davon aus, dass die IDE ein separates comile-script benutzt ( er erklärt alles anhand von Eclipse ).

Grüße,

Olek
- Netbeans Certified Associate -

Benutzeravatar
wegus
Beiträge: 458
Registriert: 26.09.2006, 09:07

Re: Ant

Beitragvon wegus » 22.02.2012, 12:09

das Standard-Tutorial kennst Du?
http://ant.apache.org/manual/tutorial-H ... thAnt.html

was die Integration in Netbeans angeht, da wüßte ich auch gern wie die richtige individualisierung von Build-Files in NB funktioniert. Ich schreibe meine WebAps derzeit mit Eclipse und mache da alles über ant. Ich bin mir sicher diese Individualisierung geht auch mit Netbeans ( und genau genommen würde ich ant auch gern bei PHP Projekten zur Steuerung einsetzen ). Eine Ant/Netbeans-Doku wäre auch mir sehr lieb!
Wenn etwas zu einfach klingt um wahr zu sein, dann ist es oft auch nicht wahr!

Benutzeravatar
recJake
Beiträge: 669
Registriert: 19.07.2006, 11:50
Wohnort: IDEs

Re: Ant

Beitragvon recJake » 22.02.2012, 12:17

Es gibt für jedes Projekt eine Buidldatei namens nbbuild.xml. Im Normalfall liegt die in der Projektwurzel und ist nur dafür bestimmt Anpassungen für den Build zu machen.
J..e
Willst Du coden, so code. Willst Du nutzen, so nutze. Willst Du beides, lass es!

Benutzeravatar
wegus
Beiträge: 458
Registriert: 26.09.2006, 09:07

Re: Ant

Beitragvon wegus » 22.02.2012, 12:22

bei PHP-Projekten scheint es so etwas nicht zu geben ( dabei macht das für scp Targets z.B. auch Sinn). Kann man denn einen zu Ecplipse vergleichbaren ant-view öffnen und einzelne Tasks per Mausclick auslsöen?
Wenn etwas zu einfach klingt um wahr zu sein, dann ist es oft auch nicht wahr!

Benutzeravatar
Olek77
Beiträge: 669
Registriert: 21.03.2009, 13:09

Re: Ant

Beitragvon Olek77 » 22.02.2012, 13:12

Re,

Ja das tutorial habe ich schon gefunden.

Irgendwie tue ich mich mit solchen Textlastigen tutorials immer schwer ... ich habe gerne
mehr screenshots ;) Wobei das hier sicher nur schwer geht, da es ja auf Kommandozeile basiert.

in der build.xml steht jedenfalls, dass man diese frei editieren kann.
Nur weiss ich nicht ob das dann irgendwie in Konflikt mit NB gerät.

von welcher NBbuild.xml sprichst du eigentlich?
Bei meinen Projekten finde ich eine build.xml und unter nbproject noch eine build-iml.xml und eine project.xml.

Grüße,

Olek
- Netbeans Certified Associate -

Benutzeravatar
nigjo
Beiträge: 587
Registriert: 08.09.2009, 09:43
Wohnort: Aachen
Kontaktdaten:

Re: Ant

Beitragvon nigjo » 22.02.2012, 13:52

wegus hat geschrieben:bei PHP-Projekten scheint es so etwas nicht zu geben ( dabei macht das für scp Targets z.B. auch Sinn). Kann man denn einen zu Ecplipse vergleichbaren ant-view öffnen und einzelne Tasks per Mausclick auslsöen?

Mach mal 'nen rechtsklick auf das Ant-Skript. Da gibt es sogar die Option "Debug Target"!

Zudem lassen sich einzelne Ant-Targets (Einfach mal ein Skript "ausklappen"!) per "Create Shortcut" in die Toolbar kopieren. Schneller wirst du den Zugriff glaube ich nicht hinbekommen. ;-)

Ansonsten bietet NetBeans für Ant-Scripte Syntax-Highlight und Autovervollständigen an. Der Rest ist Fuktionalität von Ant selber. Man sollte immer eine Instanz des Ant-Manuals im Browser offen haben, wenn man an den Skripten bastelt.

Für Standard Java Projekte gibt es diverse Targets, die man in der build.xml des Projekts "überschreiben" kann. Der Kommentar in der Skriptdatei erklärt welche es gibt. Die Targets für RCP Projekte werden in der README im "harness" Verzeichniss der IDE erklärt.

Alles in allem muss man meiner Erfahrung nach sehr viel Ausprobieren und Testen. Insbesondere bei komplexen Scripten wie bei den RCPs (wenn man kein Maven nutzt/nutzen möchte oder kann) muss man sehr darauf achten in welcher Reihenfolge welche Skripte ausgeführt oder properties Dateien eingelesen werden. Durch die Tatsache, dass Ant es nicht erlaubt einmal gesetzte Werte wieder zu verändern muss man auch ein ziemliches Augenmerk auf die Namen der Properties haben.

Je nach Größe des Projekts wird man früher oder später auch eigene Tasks schreiben wollen. Aber das führt an dieser Stelle hier zu weit. Die Tutorials dazu im Ant-Manual sind recht gut.

Ich mache bei uns hier alles mit Ant und kann damit mittlerweile auch multiple RCP-Suiten kombinieren und auch der Jenkins läuft damit wunderbar.

Wie jedes andere Make-Tool auch ist Ant eine wunderbare Sache, aber es klappt selten beim ersten Mal. Ich würde vielleicht einfach mal mit einem eigenen Skript anfangen und dort für ein einfaches Java Programm (ohne Abhängigkeiten!) die Targets "build", "jar" und "clean" erstellen.

Jens
Man sollte seine Werkzeuge kennen. Ansonsten haut man sich mit dem Hammer nur auf die Finger.

--
NetBeans Certified Engineer - Java Getriebe

Benutzeravatar
Olek77
Beiträge: 669
Registriert: 21.03.2009, 13:09

Re: Ant

Beitragvon Olek77 » 22.02.2012, 14:27

Re,

Danke auch für die Hinweise.

Werde es mal so ausprobieren @Vorgeschlagene Vorgehensweise für Anfänger.

Grüße,

Olek
- Netbeans Certified Associate -

Benutzeravatar
wegus
Beiträge: 458
Registriert: 26.09.2006, 09:07

Re: Ant

Beitragvon wegus » 23.02.2012, 08:09

nigjo hat geschrieben:Mach mal 'nen rechtsklick auf das Ant-Skript. Da gibt es sogar die Option "Debug Target"!

Zudem lassen sich einzelne Ant-Targets (Einfach mal ein Skript "ausklappen"!) per "Create Shortcut" in die Toolbar kopieren. Schneller wirst du den Zugriff glaube ich nicht hinbekommen.

Ansonsten bietet NetBeans für Ant-Scripte Syntax-Highlight und Autovervollständigen an. Der Rest ist Fuktionalität von Ant selber. Man sollte immer eine Instanz des Ant-Manuals im Browser offen haben, wenn man an den Skripten bastelt.


Danke! Mein Problem ist wohl, dass ich Netbeans hauptsächlich für PHP einsetze und dagibt es kein lokales ant, nur properties-Dateien. Ich glaub ich muß auch mal ein paar Java Projekte nach ant verlagern, dann werde ich das wohl sehen was Du beschreibst. Ant selbst ist ja super dokumentiert und ich habe ja auch selbst erstellte Skripte die ich nutze.
Wenn etwas zu einfach klingt um wahr zu sein, dann ist es oft auch nicht wahr!

Benutzeravatar
nigjo
Beiträge: 587
Registriert: 08.09.2009, 09:43
Wohnort: Aachen
Kontaktdaten:

Re: Ant

Beitragvon nigjo » 23.02.2012, 08:27

wegus hat geschrieben:Ant selbst ist ja super dokumentiert und ich habe ja auch selbst erstellte Skripte die ich nutze.
Eigentlich hat das nicht unbedingt etwas mit Java Projekten zu tun. Die NetBeans IDE sollte diese Funktionen bei jeder Ant-Datei in jedem Projekttyp bereitstellen.

Möglich, dass du das "Ant" Modul im Plugin-Manager aktivieren musst.

Jens
Man sollte seine Werkzeuge kennen. Ansonsten haut man sich mit dem Hammer nur auf die Finger.

--
NetBeans Certified Engineer - Java Getriebe

Benutzeravatar
wegus
Beiträge: 458
Registriert: 26.09.2006, 09:07

Re: Ant

Beitragvon wegus » 23.02.2012, 09:02

Möglich, dass du das "Ant" Modul im Plugin-Manager aktivieren musst.


genau das habe ich gesucht, ich finde aber nur die installierbare Dokumentation und weder unter den Installationskandidaten noch bei den installierten Plugins ant selbst ( NB 7.1)
Wenn etwas zu einfach klingt um wahr zu sein, dann ist es oft auch nicht wahr!

Benutzeravatar
nigjo
Beiträge: 587
Registriert: 08.09.2009, 09:43
Wohnort: Aachen
Kontaktdaten:

Re: Ant

Beitragvon nigjo » 23.02.2012, 09:24

wegus hat geschrieben:
Möglich, dass du das "Ant" Modul im Plugin-Manager aktivieren musst.


genau das habe ich gesucht, ich finde aber nur die installierbare Dokumentation und weder unter den Installationskandidaten noch bei den installierten Plugins ant selbst ( NB 7.1)

Ich habe mir gerade mal das PHP Paket gezogen. Wenn ich dort im Plugin-Manager schaue steht dort das Modul "Ant" in der Version 1.14.1 bereit. Funktioniert prima.

Installier dir mal den "ModuleManager". Der zeigt dir auch "versteckte" Module an, die im Plugin-Manager ausgeblendet sind.

Jens
Man sollte seine Werkzeuge kennen. Ansonsten haut man sich mit dem Hammer nur auf die Finger.

--
NetBeans Certified Engineer - Java Getriebe

Benutzeravatar
wegus
Beiträge: 458
Registriert: 26.09.2006, 09:07

Re: Ant

Beitragvon wegus » 23.02.2012, 09:58

Ja Danke,

der ModulManager ist installiert. Sieht auch praktisch aus. Mein ant finde ich damit trotzdem nicht. Ich habe mal ein Standard Java-Projekt erzeugt und da ist dann alles da wie von Dir beschrieben und man kann die ant-Scripts modifizieren, Targets starten. Sieht wirklich gut aus - vor allem das mit den Shortcuts ist gut. So läßt sich der Files Tab als Ant-View ( wie in Eclipse) gebrauchen. Wäre schön, wenn NB einen expliziten ant-View bekommen würde. So geht es ja aber schon prima. Ich denke eine build.xml für PHP-Projekte muß ich mir dann zu Fuß anlegen. Ist ja aber auch nicht schlimm ( und in der Tat ein stranger Sonderfall, denn compiliert oder gebunden wird da ja nichts). Aber jetzt weiß ich wie es geht und habe einen ModulManager - Danke :wink:
Wenn etwas zu einfach klingt um wahr zu sein, dann ist es oft auch nicht wahr!


Zurück zu „Java - Scriptsprachen“

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 2 Gäste