Archive

Archive for the ‘NetBeans’ Category

NetBeans Training an der RWTH Aachen

Wir nutzen seit über drei Jahren die NetBeans Platform als Basis für unsere eigene Anwendung. Vor knapp zwei Jahren bin ich in Göttingen auf den Source Talk Tagen gewesen und durfte den Ausführungen von Geertjan Wielenga, Toni Epple und Aljoscha Rittner lauschen. Eine Offenbarung.

Schnell kam mir die Idee das ganz auch in Aachen zu veranstalten. Nach einigen Telefonaten und Emails hat es geklappt und die MaTSE Azubis kamen in den Genuss die drei live und in Aktion zu erleben:

Der Kursraum

Ich danke den dreien noch einmal ganz herzlich für ihr kommen. Vielleicht klappt es ja auch eine regelmäßige Veranstaltung daraus zu generieren.

edit: Josch hat nun auch das Gruppenfoto ins Netz gestellt:
Gruppenfoto

“Savable” wird das neue “SaveCookie”

Bisher wurden in NetBeans alle geänderten Daten über eine Implementierung von SaveCookie im Lookup markiert. Wurden die Daten verändert, kam der Keks ins Lookup, nach dem Speichern wurde es dort wieder heraus geholt. Die Plattform sorgte dann dafür, dass die SaveAll Action aktiviert wurde und beim Programmende gab es einen netten Dialog, in dem noch einmal alle ungespeicherten DataObjects angezeigt wurden.

Jetzt gab es mit diesem Dialog zwei Probleme.

  1. Der Dialog hat “nur” alle DataObjects in der aktuellen Instanz der Anwendung geprüft ob sie einen SaveCookie in ihrem Lookup haben. Im Normalfall kein Problem, da den TopComponents ein DataObject zugewiesen bekommen welches sie darstellen. Möchte man jedoch die TCs nutzen ohne ein DataObject werden diese möglichen Änderungen im Dialog am Programmende nicht erfasst.
  2. Es gibt keine einfache Möglichkeit den angezeigten Text in diesem Dialog zu ändern. Es wird immer der diaplayName des DataObject verwendet. Bei den meisten IDE Projekten ist auch dies kein Problem, ist z.B. unter Java der Dateiname mit dem Klassennamen gekoppelt und somit ziemlich aussagekräftig. Aber schon wenn von einem Projekt trunk und branch gleichzeitig geöffnet und bearbeitet wird steigt die Ungewissheit welche Datei dort denn nun tatsächlich ungespeicherte Daten enthält.

Read the rest of this entry »

Toni Epple: Vorbereitungen für JDK 7

Toni Epple hat für JAXenter einen (längeren) Artikel mit einer Zusammenfassung der Neuerungen in NetBeans 7.0 geschrieben.

Sein Fazit:

Insgesamt ist NetBeans 7.0 ein solides Update ohne spektakuläre Überraschungen. Das NetBeans-Team hat sich mit dem neuen Release auf die wesentlichen Eigenschaften einer Java-Entwicklungsumgebung konzentriert. Die IDE wurde erwartungsgemäß besser mit dem Oracle-Stack integriert und an aktuelle Versionen vieler verwendeter Tools und Bibliotheken angepasst. Die hervorragende Java EE-Unterstützung wurde verbessert und ausgeweitet. Die meiste Arbeit wurde aber in der Unterstützung der nächsten Version der JDK geleistet. Das ist eine notwendige Vorbereitung und praktisch zum Testen der neuesten Sprachfeatures und APIs. Einige kleine Verbesserungen, vor allem bei der Verwendung Unittests machen sich im täglichen Gebrauch schnell positiv bemerkbar. Unter den Neuentwicklungen ist vor allem die GIT-Unterstützung ein wichtiger Schritt vorwärts. Das neue Release ist damit vor allem eine praktische Verbesserung, die sich auf die tatsächlichen Kernaufgaben der IDE konzentriert und einiges an Verbesserungen für den alltäglichen Gebrauch mitbringt.

Organize Imports für NetBeans 7

Neues NetBeans, neuer Editor. Und damit war auch eine neue Version meines “Organize Imports” Plugin fällig. Read the rest of this entry »

Bundletexte zurück in den Quelltext

Mit erscheinen der Version 7 der NetBeans Plattform sind auch einige neue Annotations hinzugekommen. Es scheint als würden die NetBeans Entwickler so langsam das Potential dieses Programmierkonstruktes nutzen wollen. Mit allen Konsequenzen. Eine dieser Neuerungen ist die Annotation @Message. Read the rest of this entry »

Eine große Datei mit Bundletexten

Nicht nur ich mache mir Gedanken darum, wie man seine Anwendung am besten in einer anderen Sprache angezeigt bekommt. Geertjan hat in seinem Blog an verschiedenen Stellen schon mal damit beschäftigt.

In einem aktuellen Beitrag hat er ein Tool aufgetan mit Namen “i18nchecker”. Dieses Tool sammelt aus einem Projekt (Es muss nicht zwingend ein Suiteprojekt sein) alle Bundles zusammen und schreibt diese zusammen in eine CSV Datei. Diese kann dann z.B. in einem Tabellenkalkulationsprogramm geöffnet und bearbeitet werden. Eine Datei mit allen Texten.

Das beste an diesem Tool ist aber, dass diese CSV Datei auch wieder in die Bundledateien aufgespalten werden kann. Man kann also die Gesamtdatei ohne weiteres an einen Übersetzer geben ohne dass dieser Zugriff auf die Quellen haben muss. Zusammen mit einem geschickt gewählten Antskript eine nette Sache.

Die Krux mit “definierten” Verzeichnisstrukuren

Eigentlich wollte ich einen neuen Bugreport schreiben, in dem ich vorgeschlagen hätte meine Version mit dem Userdir in “Eigenen Dateien” speichern vorgeschlagen hätte. Und da man ja ein guter Reporter sein möchte sucht man vorher nach schon getätigten Reports um Duplikate zu vermeiden. Dabei ist mir dann ein anderer Eintrag aufgefallen, der zwar schon was älter ist aber das Problem mit dem überfüllten Windowsprofil eleganter lösen könnte. Read the rest of this entry »

Annotations statt Layereinträge

“Der neue Besen kehrt gut, bevor er voll Staub ist.” — Freidank

Geertjan schreibt in seinem Blog, dass die Programmbeispiele von NetBeans in der Version 7.0 überarbeitet wurden. Vor allem die direkten Einträge im XML Layer wurden durch Annotations direkt in den entsprechenden Klassen ersetzt.

So nett ich die Idee hinter den Annotations auch finde. Die Screenshots in dem Blogbeitrag lassen mich allerdings auch ein wenig daran zweifeln, ob sie der Weisheit letzter Schluss sind. Zumindest in Sachen “Übersicht” sind sie meiner Meinung nach ein Schritt zurück. Unbestritten sehe ich allerdings auch den Vorteil, dass die Annotations das Refactoring der Klassen einfacher (und auch Sicherer) machen und dass sie potentielle Fehleingaben im XML Layer vermindern.

Ich tue mich aber etwas schwer mit der “Darstellung” die sich aus der Syntax einer Annotation ergibt. Es lässt sich (auf den ersten Blick in den Quelltext) nur schwer erkennen, welche korrespondierenden Einträge in der Layer zu diesen Annotations gehören. Sicherlich kann man in der generates-layer.xml nachsehen, aber das ist ja auch nicht Sinn der Sache. Hier würde eine Art “Editor” oder zumindest “Viewer” für den Annotationblock hilfreich sein. Allerdings muss ich auch gestehen, dass mir im Moment keine passende Darstellung dafür einfällt.

Vielleicht hat jemand ja eine Idee, wie man die Übersicht bei den Annotation/Layereintägen zurück gewinnen kann.

Jens

aktueller Stand beim Update Center

Die Zeichen stehen gut, dass in der 7er Version von NetBeans die Icons im PluginManager austauschbar werden. Jaroslav Tulach hat zwar nicht meine Version der Quelländerung verwendet, aber dafür hat er ziemlich tief in die Trickkiste gegriffen und das Problem geschickt umschifft. Read the rest of this entry »

Eigene Einträge im Projektbaum

Auch wenn es etwas pathetisch klingt, aber je mehr ich mit der NetBeans Plattform arbeite desto mehr möchte ich in die Lobeshymnen einstimmen. Ich bin einfach begeistert, wie einfach es geht eine RCP Anwendung – und damit auch die NetBeans IDE selbst – zu erweitern. Zum Beispiel die “Project API”. Die NetBeans IDE kennt diverse Projekttypen. Die häufigsten werden sicherlich die Java Projekttypen sein. Jeder wird damit schon mal gearbeitet haben, der die NetBeans IDE benutzt.

Aber was ist, wenn in der Projektansicht nicht alle Informationen angezeigt werden, die man gerne hätte? Klar, man sieht die Dateien in der “Files” Ansicht, aber das ist nicht das gleiche. Warum nicht die Ansicht nehmen, die sowieso schon offen ist? Kein Problem. Dank dem genialen Konzept der XML Layer Struktur von NetBeans. Read the rest of this entry »