Debuggen von Annotation Prozessoren (Teil 2)

Ich habe vor einiger Zeit schon mal geschrieben, wie man seine eigenen Processor Implementierungen mit NetBeans debuggen kann. Durch Zufall bin ich neulich allerdings über einen anderen Hinweis gestolpert mit dem das ganze Prozedere deutlich einfacher wird und keine zweite IDE Instanz benötigt. Read the rest of this entry »

Java 7+: Deleting Recursively A Directory : Adam Bien’s Weblog

Adam Bien zeigt in seinem Eintrag Java 7+: Deleting Recursively A Directory sehr schön, wie man in Java 7 und höher Verzeichnisbäume rekursiv löschen kann. Read the rest of this entry »

Wie schreibt man ein gute JavaDocs

Eine Frage dich ich nicht wirklich zur Zufriedenheit beantworten kann. Allerdings bin ich der gleichen Meinung wie Adam Bien, dass man sich solche Kommentare sparen kann:

1
2
3
4
5
6
/**
 * This is a setter which sets the name
 *
 * @param name - the name to be set
 */
public void setName(String name) {...

Read the rest of this entry »

SecondaryLoop – Der saubere SwingWorker

Der Herr Ullenboom hat mich durch seinen Java-Blog auf ein interessantes Feature in Java 7 aufmerksam gemacht: java.awt.SecondaryLoop. Im Blogeintrag Hidden Java 7 Features – SecondaryLoop auf sellmic.com wird nett beschrieben, wie man nebenläufige Tasks für eine UI schreiben kann ohne den EDT zu blockieren und trotzdem seinen Quelltext “sauber” zu halten.

Anwendungsfälle fallen mir beim meinen Programmen auf Anhieb einige ein, bei denen ich mit dem SwingWorker ein paar Klimmzüge veranstaltet habe.

Java Scrapbook for NetBeans IDE – Geertjan’s Blog

Geertjan hat ein neues Plugin gebastelt: Java Scrapbook for NetBeans IDE. Quasi ein kleines “Notizbuch” für Java Quelltexte mit der netten Fähigkeit diesen Quellcode auch ausführen zu können. Der Clou dabei ist, dass man dafür keine Klasse oder Methode schrieben muss, sondern einfach nur die gewünschten Anweisungen.

Das Feature kenne ich noch aus Eclipse Zeiten und habe es hin und wieder mal vermisst. Vielleicht schafft es das Plugin ja in die NetBeans IDE. Wäre cool.

Aufgabe: Zeige alle .properties eines Projekts an

Aufgabe: Erstelle ein NetBeans Modul mit dem alle .properties Dateien des aktuell ausgewählten Projekts in einem eigenen Fenster angezeigen werden können.

Ich finde, dass diese Aufgabe sich ganz gut als Einstieg in die NetBeans Platform Programmierung eignen kann. Sie erfüllt einen Zweck und all zu schwer sollte sie nicht sein, zumindest wenn man sich in die Grundlagen von Node, Lookup & Co eingearbeitet hat. Es werden in diesem Modul diverse dieser Grundlagenbereiche von NetBeans angesprochen aber der Aufwand hält sich dennoch in Grenzen. Read the rest of this entry »

@OnStart & @OnStop Geertjan’s Blog

Es ist zwar schon eine Weile her, dass die Funktion in NetBeans eingebaut wurde (mit Version 7.2) aber ich durfte sie aus gegebenen Anlass erst jetzt entdecken:
@OnStart & @OnStop Geertjan’s Blog.

Read the rest of this entry »

Selbstaktualisierende Anwendungen

Bei heutige Software wird vom Anwender schon fast vorausgesetzt, dass die Anwendung automatisch “im Internet” nachschaut ob eine neuere Version seiner Selbst vorhanden ist und im positiven Fall dann auch automatisch eine Aktualisierung von sich selbst auf dem lokalen Rechner vornimmt. Allerdings stellt sich diese “Selbstverständlichkeit” in der Praxis oft als erst zu nehmendes Problem heraus: Wie bitte schön, soll ich eine Datei (also die Jar-Datei) mit neuem Inhalt befüllen, wenn sie gerade geöffnet und für Änderungen gesperrt ist? Schließlich werden die .class-Datei aus der Datei gerade von der Java-VM verwendet. Vielleicht ist dies auch ein Grund, warum es keine Standardlösung von Java selbst existiert um mit dieser Problematik umzugehen. Read the rest of this entry »

Installation von MinGW für NetBeans

Auch wenn das hier eigentlich ein Java-Blog ist, so möchte ich trotzdem einmal zeigen, wie einfach man NetBeans auch für die C/C++ Entwicklung einrichten kann. Die Anleitung passt sogar in einen Tweet:

Read the rest of this entry »

Fragen zu mehrdeutige Methodenaufrufe

Ein kleines Codebeispiel:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
public class TestAnwendung {
  public static void main(String[] args) {
    beliebigeMethode(true, new Object());
  }

  public static void beliebigeMethode(
      boolean arg1, Object... argList) {
    // do something
  }

  public static void beliebigeMethode(
      Object arg1, Object... argList) {
    // do something
  }
}

Und eine kleine Frage dazu: Welche Methode wird aufgerufen? Read the rest of this entry »