Die Tastenkombination für Fix-Imports (Strg+Umschalt+I) funktioniert unter KDE nicht solange der Kopete diese Kombination für sich beantsprucht. Zum Ändern die Kontaktliste öffnen und dann
Einstellungen - Globale Kurzbefehle einrichten...
auswählen. Dort kann man dann die Kurzbefehle ändern oder deaktivieren.
Dienstag, 19. August 2008
Dienstag, 13. Mai 2008
Eclipse auf AMD64
Eclipse auf einem 64-Bit-Prozessor mit Suns JDK stürzt ständig ab. Der Grund hierfür ist Bug #6614100: eine fehlerhafte Optimierung durch den Hotspot-Compiler, die nur unter ganz bestimmten Umständen auftritt, aber leider eben bei Eclipse. Betroffen sind alle JDK/JRE von Sun. Abhilfe schafft das Deaktivieren des Hotspot-Compilers. Macht man dies für das komplette Eclipse, schlafen einem die Füße ein. Erfreulicherweise kann man dies auch ganz gezielt für die eine Klasse deaktivieren, die den Fehler verursacht. Hierfür muss man in seiner eclipse.ini folgende Option am Ende setzen - nach dem -vmargs:
-XX:CompileCommand=exclude,org/eclipse/core/internal/dtree/DataTreeNode,forwardDeltaWith
Hier als Beispiel meine eclipse.ini:
-showsplash
org.eclipse.platform
-vmargs
-Dosgi.requiredJavaVersion=1.5
-Xms1536m
-Xmx1536m
-XX:PermSize=512m
-XX:MaxPermSize=512m
-XX:CompileCommand=exclude,org/eclipse/core/internal/dtree/DataTreeNode,forwardDeltaWith
Das Erhöhen des Speichers auf 1536 MB und der PermSize auf feste 512 MB beschleunigt Eclipse, sollte aber nur mit ausreichend Speicher gemacht werden. Ob es geklappt hat, sieht man unter Linux mit
ps ux|grep java
Dort müssen die Optionen erscheinen.
-XX:CompileCommand=exclude,org/eclipse/core/internal/dtree/DataTreeNode,forwardDeltaWith
Hier als Beispiel meine eclipse.ini:
-showsplash
org.eclipse.platform
-vmargs
-Dosgi.requiredJavaVersion=1.5
-Xms1536m
-Xmx1536m
-XX:PermSize=512m
-XX:MaxPermSize=512m
-XX:CompileCommand=exclude,org/eclipse/core/internal/dtree/DataTreeNode,forwardDeltaWith
Das Erhöhen des Speichers auf 1536 MB und der PermSize auf feste 512 MB beschleunigt Eclipse, sollte aber nur mit ausreichend Speicher gemacht werden. Ob es geklappt hat, sieht man unter Linux mit
ps ux|grep java
Dort müssen die Optionen erscheinen.
Sonntag, 11. Mai 2008
ftplicity auf Ubuntu 8.04 Hardy Heron
Hardy enthält eine neuere Duplicity-Version, bei der sich die Aufrufsyntax geändert hat. Deshalb funktioniert die ftplicity-Version von Heise nicht mehr. Ich hab das Skript passend geändert, so dass es mit neueren - und leider auch nur mit neueren - Versionen von duplicity funktioniert.
Download von ftplicity v2.0
Download von ftplicity v2.0
Mittwoch, 30. April 2008
duplicity und ftplicity auf Microsoft FTP Server
Versucht man mit duplicity oder ftplicity auf einen Microsoft FTP-Server zu sichern, erhält man folgende Fehlermeldung:
The filename, directory name, or volume label syntax is incorrect
Dies liegt daran, dass duplicity standardmäßig Dateinamen mit Dopplepunkten erzeugt, die ein Microsoft Betriebssystem nicht verarbeiten kann. Zum Glück gibt es eine duplicity-Option, mit der auf ein anderes Format für Dateinamen umgeschaltet werden kann:
--short-filenames
If this option is specified, the names of the files duplicity writes will be shorter (about 30 chars) but less understandable. This may be useful when backing up to MacOS or another OS or FS that doesn’t support long filenames.
Jetzt gilt es nur noch ftplicity zu überzeugen, diese Option zu verwenden. Da es keinen entsprechenden Parameter in der Konfigurationsdatei gibt, muss man die Programmdatei von ftplicity direkt bearbeiten: um die Zeile 80 herum muss man in der letzten Zeile der Funktion
function ftply { # die eigentliche Wrapper-Funktion
FTP_PASSWORD="$ZIEL_PW" \
PASSPHRASE="$GPG_PW" \
TMPDIR="$TEMP_DIR" \
$DUPLICITY --encrypt-key $GPG_KEY \
--sign-key $GPG_KEY --verbosity $VERBOSITY \
"$@"
}
die zusätzliche Option eintragen:
function ftply { # die eigentliche Wrapper-Funktion
FTP_PASSWORD="$ZIEL_PW" \
PASSPHRASE="$GPG_PW" \
TMPDIR="$TEMP_DIR" \
$DUPLICITY --encrypt-key $GPG_KEY \
--sign-key $GPG_KEY --verbosity $VERBOSITY \
--short-filenames "$@"
}
Danach klappt das Backup auch mit einem Microsoft FTP-Server.
The filename, directory name, or volume label syntax is incorrect
Dies liegt daran, dass duplicity standardmäßig Dateinamen mit Dopplepunkten erzeugt, die ein Microsoft Betriebssystem nicht verarbeiten kann. Zum Glück gibt es eine duplicity-Option, mit der auf ein anderes Format für Dateinamen umgeschaltet werden kann:
--short-filenames
If this option is specified, the names of the files duplicity writes will be shorter (about 30 chars) but less understandable. This may be useful when backing up to MacOS or another OS or FS that doesn’t support long filenames.
Jetzt gilt es nur noch ftplicity zu überzeugen, diese Option zu verwenden. Da es keinen entsprechenden Parameter in der Konfigurationsdatei gibt, muss man die Programmdatei von ftplicity direkt bearbeiten: um die Zeile 80 herum muss man in der letzten Zeile der Funktion
function ftply { # die eigentliche Wrapper-Funktion
FTP_PASSWORD="$ZIEL_PW" \
PASSPHRASE="$GPG_PW" \
TMPDIR="$TEMP_DIR" \
$DUPLICITY --encrypt-key $GPG_KEY \
--sign-key $GPG_KEY --verbosity $VERBOSITY \
"$@"
}
die zusätzliche Option eintragen:
function ftply { # die eigentliche Wrapper-Funktion
FTP_PASSWORD="$ZIEL_PW" \
PASSPHRASE="$GPG_PW" \
TMPDIR="$TEMP_DIR" \
$DUPLICITY --encrypt-key $GPG_KEY \
--sign-key $GPG_KEY --verbosity $VERBOSITY \
--short-filenames "$@"
}
Danach klappt das Backup auch mit einem Microsoft FTP-Server.
Dienstag, 15. April 2008
GWT das Heimtelefonieren abgewöhnen
Der Hosted-Modus des GWT prüft bei Google, ob die aktuellste Version verwendet wird. Wer dies abschalten möchte, der editiert .java/.userPrefs/com/google/gwt/dev/shell/prefs.xml. Diese Datei enthält die Uhrzeit der nächsten Abfrage in Millisekunden seit 1970. Da dies ein long ist, kann man getrost zwei, drei Neuen vornedran schreiben. Danach gibt es für absehbare Zeit kein nach Hause telefonieren mehr.
Donnerstag, 28. Februar 2008
Exception mit JAX-RPC und SAAJ
Verwendet man JDK 1.6 und JAX-RPC in der mit NetBeans ausgelieferten Version, so erhält man u.U. folgende Exception:
Exception in thread "main" java.lang.ClassCastException: com.sun.xml.internal.messaging.saaj.soap.ver1_1.Message1_1Impl cannot be cast to com.sun.xml.messaging.saaj.soap.MessageImpl
at com.sun.xml.rpc.client.StubBase._postSendingHook(StubBase.java:231)
at com.sun.xml.rpc.client.StreamingSender._send(StreamingSender.java:324)
Die Ursache hierfür ist eine inkompatible SAAJ-Bibliothek. Nach dem Installieren der aktuellen Version von https://saaj.dev.java.net/ klappt es.
Exception in thread "main" java.lang.ClassCastException: com.sun.xml.internal.messaging.saaj.soap.ver1_1.Message1_1Impl cannot be cast to com.sun.xml.messaging.saaj.soap.MessageImpl
at com.sun.xml.rpc.client.StubBase._postSendingHook(StubBase.java:231)
at com.sun.xml.rpc.client.StreamingSender._send(StreamingSender.java:324)
Die Ursache hierfür ist eine inkompatible SAAJ-Bibliothek. Nach dem Installieren der aktuellen Version von https://saaj.dev.java.net/ klappt es.
Mittwoch, 23. Januar 2008
Java druckt nicht unter Ubuntu 7.10
Versucht man unter Ubuntu 7.10 aus einem Java-Programm etwas heraus zu drucken, so erhält man auf den meisten Systemen diese Exception:
java.lang.NullPointerException: null attribute
at sun.print.IPPPrintService.isAttributeValueSupported(IPPPrintService.java:1147)
at sun.print.ServiceDialog$OrientationPanel.updateInfo(ServiceDialog.java:2121)
at sun.print.ServiceDialog$PageSetupPanel.updateInfo(ServiceDialog.java:1263)
die Ursache hierfür ist die Drehbarkeit der Seite in CUPS v1.3. Hierbei wird beim Modus "automatisch" ein Nullpointer zurückgegeben, mit dem die aktuelle Java-Version noch nichts anfangen kann:
http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6633656
Damit man trotzdem drucken kann, muss man entweder
deb http://de.archive.ubuntu.com/ubuntu/ feisty main restricted
Dann in der Datei /etc/apt/preferences - die ich neu erstellen musste - folgenden Eintrag machen:
Package: cupsys
Pin: version 1.2.8-*
Pin-Priority: 1001
Danach kann man mit
sudo apt-get update
sudo apt-get upgrade
die Version von CUPS auf die ältere deaktualisieren und das Drucken klappt wieder.
java.lang.NullPointerException: null attribute
at sun.print.IPPPrintService.isAttributeValueSupported(IPPPrintService.java:1147)
at sun.print.ServiceDialog$OrientationPanel.updateInfo(ServiceDialog.java:2121)
at sun.print.ServiceDialog$PageSetupPanel.updateInfo(ServiceDialog.java:1263)
die Ursache hierfür ist die Drehbarkeit der Seite in CUPS v1.3. Hierbei wird beim Modus "automatisch" ein Nullpointer zurückgegeben, mit dem die aktuelle Java-Version noch nichts anfangen kann:
http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6633656
Damit man trotzdem drucken kann, muss man entweder
- die Seitendrehung von "automatisch" auf einen festen Wert stellen
- CUPS auf eine ältere Version umstellen
deb http://de.archive.ubuntu.com/ubuntu/ feisty main restricted
Dann in der Datei /etc/apt/preferences - die ich neu erstellen musste - folgenden Eintrag machen:
Package: cupsys
Pin: version 1.2.8-*
Pin-Priority: 1001
Danach kann man mit
sudo apt-get update
sudo apt-get upgrade
die Version von CUPS auf die ältere deaktualisieren und das Drucken klappt wieder.
Abonnieren
Posts (Atom)