# Java IDE auswählen / einrichten



## Peter329 (24. Feb 2016)

Hi,

ich habe bisher Visual Basic programmiert und dafür das Visual Studio verwendet.

Nun möchte ich auch Programme unter Java schreiben und suche dafür nach einer passenden Umgebung.

Ich habe ECLIPSE installiert. Da habe ich zwar eine eine Umgebung, aber die lässt wohl zunächst mal nur Java Konsolanwendungen zu. Ich habe dann gemäß Tutorial SWT heruntergeladen und als erste Anwendung ein leeres Fenster ausgegeben.

Soweit so gut. Aber so wie ich das verstehe, muss ich in dieser Umgebung das Fenster und alle Controls (Buttons, Text Boxes, Container etc. ) mit Programmcode beschreiben. Das scheint mir ziemlich mühsam zu sein.

Gibt es denn für Java keine IDE, wo man ähnlich wie im Visual Studio eine Toolbox hat, mit der man die Controls einfach auf das Entwicklungsfenster ziehen kann und der Code automatisch generiert wird?

Wie gesagt, ich bin völliger Neuling im Java. Ehe ich hier irgendeine Sackgasse einschlage, würde ich gern wissen, welche Umgebung man üblicherweise verwendet, um Windows Programme unter Java zu schreiben.

LG
Peter


----------



## Joose (24. Feb 2016)

Standard ist dies bei Eclipse nicht, aber durch das eine oder andere Plugin (z.B.: WindowBuilder) kann man sich entsprechendes zur IDE hinzufügen.

Mit Eclipse lassen sich sehr wohl GUI Applikation programmieren, dazu wird nicht extra SWT gebraucht.
In Java können GUI Applikationen in Swing, SWT oder AWT geschrieben werden. Wobei AWT die älterste Methode ist und durch Swing abgelöst wurde (aber viele Sachen wie z.B. Listenerer sind immer noch von AWT Package). SWT wurde (wenn ich mich richtig erinnere) von den Eclipse Machern entwickelt und sorgt dafür das sich die Applikation am Design des OS orientiert. Natürlich hat SWT auch andere Features.

Seit Java7u6 ist JavaFX fixer Bestandteil von Java (davor nur durch extra Installation verfügbar) und soll eine saubere Trennung zwischen Design und Code bringen (ähnlich XAML und C#). JavaFX soll Swing ablösen, bis das aber wirklich passiert dauert es sicher noch etwas. Hier liegt es an dir zu entscheiden was du lernst.

Mit der neuersten Eclipse Version und dem neuersten Java sollte JavaFX für dich schon verfügbar sein. Für einen Design Editor musst man sich trotzdem noch den JavaFX Scene Builder runterladen (eine direkte Integration in der IDE habe ich bisher nicht gefunden, aber auch nicht wirklich gesucht)


----------



## Peter329 (24. Feb 2016)

Erst mal vielen Dank für deine Antwort. 

Ich habe das neueste ECLIPSE und das neueste Java SE JDK  ... darin sollten die JavaFX Scene Builder binaries also schon enthalten sein. So steht das jedenfalls auf der Oracle Download Seite, wenn ich das richtig verstanden habe. 

Nur, wie starte ich den Design Editor denn jetzt. Ich habe die Action Bar komplett durchforstet und nichts gefunden, was in diese Richtung weisen könnte. 

LG
Peter


----------



## Joose (24. Feb 2016)

Naja du musst erstmal ein Java FXML File erstellen, in diesem steht dann der Designcode.
Wenn ich mich richtig erinnere muss man dann 1x per rechter Maustaste auswählen das es im Scene Builder gestartet werden soll.

EDIT: Hier ein (vielleicht) hilfreicher Link
http://docs.oracle.com/javafx/scenebuilder/1/use_java_ides/sb-with-eclipse.htm


----------



## kneitzel (24. Feb 2016)

Wenn Du nicht auf Eclipse festgelegt bist aus irgend einem Grunde, dann würde ich Dir evtl. empfehlen, auch mal andere IDEs auszuprobieren. Ich selbst nutze IntelliJ von JetBrains. Aber es gibt auch noch andere IDEs, die evtl. auch einen Blick wert sind.

Ich will auf keinen Fall sagen, dass Eclipse schlecht ist, aber es gibt viele gute IDEs und da kann man sich ja in Ruhe einmal umschauen.


----------



## Peter329 (25. Feb 2016)

Leider bin ich aus verschiedenen Gründen auf Eclipse festgelegt. 

Ich habe jetzt den FX Scene Builder installiert. Das ist auch recht gut durchgeflutscht. 

Jetzt habe ich aber ein Problem beim Öffnen des .fxml Files meiner FXTest Anwendung mit dem Scene Builder. Der Pfad zum Scene Builder wird nicht gefunden und ich soll den absoluten Path in die Preferences eintragen. 

Also Preferences finde ich nur unter dem Reiter Windows. Aber da sehe nix wo ich einen Pfad einstellen könnte. 

Und selbst wenn ich das finden würde, wie finde ich denn heraus wie der absolute Pfad zum Scene Builder lautet? 

Ich hoffe, ihr könnt mir helfen. 

LG
Peter


----------



## kneitzel (25. Feb 2016)

Welches Betriebssystem verwendest Du? Unter Windows installiert sich der Oracle Scene Builder unter:
32 Bit: "C:\Program Files\Oracle\JavaFX Scene Builder 2.0\"
64 Bit: "C:\Program Files (x86)\Oracle\JavaFX Scene Builder 2.0\"

Den Installationsort kannst Du aber auch erkennen, wenn Du dir die Eigenschaften des Shortcuts vom JavaFX Scene Builder 2.0 anschaust. So ein Icon wird per default auch auf dem Bildschirm abgelegt.

Bei Mac und Linux wird der Pfad natürlich anders aussehen.

Eclipse kenne ich selbst nicht. Ich habe mal geschaut und folgendes gefunden:
http://code.makery.ch/library/javafx-8-tutorial/part1/
Demnach 
a) bin ich mit dem Scene Builder 2.0 veraltet 
b) findet sich die Einstellung in Eclipse unter Preferences in JavaFX


----------



## Peter329 (25. Feb 2016)

Also erst mal herzlichen Dank dafür, dass du dich mit meinem Problem so eingehend befasst hast. 

Das hat mir jetzt dahingehend weitergeholfen, dass ich nun die Vermutung habe, dass ich den JavaFX Scene Builder wohl nicht oder nicht richtig installiert habe. 

Ich verwende Windows 7 als Betriebssystem und ich habe Java 8 Update 74 (64 Bit) und Java SE Development Kit 8 Update 74 installiert. 

Außerdem habe ich das "e(fx)clipse -JavaFX Tooling and Runtime for Eclipse" installiert. Das reicht aber offensichtlich nicht aus. 

Jedenfalls finde ich weder den Scene Builder im Software Inventory noch ein Scene Builder Desktop Icon. Ich finde im Netz für den Scene Builder aber auch keinen Download. Da wird vermerkt, dass die Binaries im Java 8 schon enthalten seien. Aber es braucht wohl doch noch einen Install? 

Ich bin ratlos! 

LG
Peter


----------



## kneitzel (25. Feb 2016)

Ja, Du musst den JavaFX Scene Builder selbst installieren. Ich habe bei mir noch die Version 2.0 im Einsatz (aber ich nutze den auch nicht wirklich oft). Den konnte man damals bei Oracle direkt herunter laden. Jetzt bietet Oracle aber wohl nur noch den Source Code zum selbst bauen an.

Aber unter http://gluonhq.com/open-source/scene-builder/ gibt es die neue Version auch als Binary zum download. Der Installer gefällt mir aber nicht wirklich, denn die ganze Applikation installiert sich im User-Verzeichnis ohne dass man dies bei der Installation beeinflussen kann. Das ist aus Windows-Sicht nicht wirklich gut aber sollte für normale Szenarien ausreichend sein. Dann hast Du halt einen Installationspfad a.la. C:\Users\konrad\AppData\Local\SceneBuilder\SceneBuilder.exe

Konrad


----------



## Peter329 (25. Feb 2016)

Danke für deine Geduld. Ich hoffe, dass ich nicht gar zu unverschämt bin, wenn ich ein bissl weiter aushole:

Ich halte in einem Trainingscenter Kurse für WebSphereMQ - das ist ein Message Queuing System der Fa. IBM, das in der Industrie weit verbreitet ist und auf sehr vielen Plattformen läuft. Die Mehrzahl meiner Seminare sind öffentlich und so kommen die Teilnehmer von verschiedenen Firmen mit den unterschiedlichsten Systemumgebungen:

Host (z/OS): COBOL, PL1, C, ASSEMBLER - hier gibt es TSO/ISPF mit der Dialogsprache DTL. Damit hab ich kein Problem. Die Programme erhalten damit eine standardisierte grafische Oberfläche.

LINUX, UNIX, WINDOWS (LUW): C#, VB, Java - für C# und VB gibt es VisualStudio ... und damit kann man GUI Programme erstellen. Für Java gibt es im Trainingscenter ECLIPSE ... aber da hab ich bisher leider noch keine Möglichkeit gefunden, GUI Programme ohne großen Aufwand zu erstellen. Dafür suche ich jetzt eine Lösung.

Die Installation von Scene Builder in ein PRIVATES Verzeichnis  ist leider nicht machbar, denn ich will das Dingens nicht auf 10 Schulungscomputern installieren. Ich brauche also eine vernünftige Standardlösung.

In der Industrie ist ECLIPSE weit verbreitet. Ich frage mich, wie die Leute ihre GUI Programme entwickeln ! Oder schreiben die nur Programme mit Zeilen Eingabe und Zeilen Ausgabe, weil die Programme auf Servern laufen ? Was ist der STANDARD in der Industrie für GUI Programmierung unter Windows/ECLIPSE ? Setzen Firmen den Scene Builder ein ? Oder haben die andere Software ?

Ich hoffe, ich habe mein Anliegen einigermaßen verständlich machen können. Für Ratschläge wäre ich sehr dankbar!

LG
Peter


----------

