Code-Formatierung unter IntelliJ IDEA selektiv deaktivieren

IntelliJ IDEA bietet, wie wahrscheinlich jede brauchbare IDE, eine Funktionalität um den Quelltext automatisch zu formatieren. Manchmal kann es allerdings notwendig sein die Funktionalität für bestimmte Dateien oder Abschnitte zu deaktivieren. IntelliJ IDEA bietet dem Nutzer eine Möglichkeit dies zu tun. Dazu muss in den Einstellungen unter Code Style im Tab Formatter Control das entsprechende Feature aktiviert werden. Im Beispiel sieht das Ganze wie folgt aus:

// @formatter:off
try {
  // Do something wrong
} catch(Exception e) {
  // Gotta Catch 'Em All
}
// @formatter:on

Durch den einleitenden Kommentar @formatter:off wird die Code-Formatierung deaktiviert; am Ende des Blockes wird er mittels @formatter:on wieder aktiviert. Damit ist es mögliche Abschnitte und Dateien von der Code-Formatierung auszunehmen.

Probleme bei der Testausführung unter IntelliJ IDEA

Bei der Ausführung bestimmer Testfälle mittels JUnit kann es unter IntelliJ IDEA zu folgender Fehlermeldung kommen:

Error running ‘ConverterTest’: Command line is too long. Shorten command line for ConverterTestor also for JUnit default configuration.

Hintergrund für diesen Fehler ist das Problem, das die Kommandozeile zur Ausführung des Tests zu lang wird. Dies kann durch Beschränkungen des Betriebssystems passiere. IntelliJ IDEA versucht nun die Kommandozeile zu kürzen, um eine Ausführung zu ermöglichen.

Über die Konfiguration kann der Fehler behoben werden

Behoben werden kann das Problem über die Konfiguration des Testes. Dazu sollte der Run/Debug Configuration-Dialog geöffnet werden. Dort sollte im Tab Configuration unter dem Punkt Shorten command line der Punkt JAR manifest ausgewählt werden. Anschließend sollte der Test ohne Probleme durchgeführt werden können.

Separates Watches-Fenster in IntelliJ IDEA aktivieren

In den neueren Versionen der Java-IDE IntelliJ IDEA wurde die Ansicht des Variables– und des Watches-Fensters standardmäßig zusammengelegt. Damit können alle aktuell aktiven Variablen und die selbstdefinierten Watches in einem Fenster betrachtet werden.

Standardmäßig ist das Variablen- und das Watch-Fenster zu einem Fenster zusammengefasst

Dem ein oder anderen mag diese neue Ansicht zu unübersichtlich sein. Die alte Ansicht ist nicht aus der IDE verschwunden, so das diese wieder aktiviert werden kann. Dazu muss dann Brillensymbol in der vertikalen Symbolleiste des Fensters ausgewählt werden.

Die alte Ansicht kann wieder aktiviert werden

Damit wird die alte Ansicht, in der die aktiven Variablen und die Watches wieder getrennt sind, aktiviert.

Freier Java-Decompiler

In jeder besseren Entwicklungsumgebung für Java ist ein Decompiler integriert. Daneben existieren auch Standalone-Decompiler wie der Java Decompiler. Der Decompiler ermöglicht es den Quelltext aus dem Kompilat wieder herzustellen. Dies funktioniert bei Java relativ gut, da dort der Quelltext nur in Bytecode für die JVM umgewandelt wird. Dieser Bytecode ist noch relativ High-Level, so das die Rückumwandlung einfacher vonstattengeht. Neben dem Standalone-GUI, existieren Plugins für Eclipse und IntelliJ IDEA.

Die grafische Oberfläche des Decompiler

Zu finden ist das Projekt unter java-decompiler.github.io, der entsprechenden Quelltext befindet sich ebenfalls auf GitHub. Lizenziert ist der Decompiler unter der GPL in der Version 3 und damit freie Software.

Refactoring von Zeichenketten unter IntelliJ IDEA unterbinden

Die Java-IDE IntelliJ IDEA verfügt über eine Reihe von Refactoring-Methoden. So können Variablen umbenannt, Methoden extrahiert und vieles mehr mit Hilfe der Refactoring-Werkzeuge bewerkstelligt werden. Manchmal schießt die IDE beim Refactoring über das Ziel hinaus. So kann es passieren, das bei der Umbenennung einer Variable nicht nur diese, sondern auch Zeichenketten mit dem gleichen Namen umbenannt werden.

Der Rename-Dialog der IDE

Verantwortlich hierfür ist eine optionale Funktionalität in der Rename-Funktionalität. Um diese zu deaktivieren muss der Rename-Dialog geöffnet werden. Dies geschieht indem die Tastenkombinationen Shift + F6 knapp eine habe Sekunde gedrückt wird, bis der entsprechende Dialog erscheint. In diesem Dialog muss nun die Checkbox mit der Beschreibung Search in comments and strings deaktiviert werden. Anschließend werden nur noch die gewünschten Strukturen im Quellcode umbenannt, ohne dass sich die Umbenennung auf weitere Zeichenketten auswirkt.