Toolkit.getDefaultToolkit().addAWTEventListener(new AWTEventListener() {
@Override
public void eventDispatched(AWTEvent event) {
System.err.println(event);
}
}, AWTEvent.MOUSE_EVENT_MASK | AWTEvent.WINDOW_EVENT_MASK);
źródło
wtorek, 10 czerwca 2014
Java: Śledzenie zdarzeń AWT
wtorek, 6 sierpnia 2013
Autoryzacja "po kluczu" w TortoiseSVN
Settings > Network > SSH client:
c:\Program Files\tortoisesvn\bin\TortoisePlink.exe -i c:\...\kluczprywatny.ppk -2 -l login_uzytkownika
poniedziałek, 29 lipca 2013
VisualVM i Websphere
Websphere:
1. Servers > Application servers > {NAZWA_SERVERA} > Java and Process Management > Process definition > Java Virtual Machine
2. W Generic JVM arguments dodać:
-Djavax.management.builder.initial= -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.authenticate=false \
-Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.port=1099
("javax.management.builder.initial" ma być puste - to nie literówka)
3. Restart.
VisualVM:
1. File -> Add JMX Connection
2. Connection:
localhost:1099źródło
czwartek, 6 czerwca 2013
Gubienie StackTrace w HotSpot JVM -server
Jeśli JVM jest uruchomione z parametrem -server, to dla często występujących wyjątków mogą zostać obcięte StackTrace'y, np.:
public class NPEnoSTMain {
public static void main(String[] args) {
for (int i = 0; i < 100000; i++) {
try {
((Object) null).hashCode();
} catch (NullPointerException e) {
e.printStackTrace();
}
}
}
}
Na początku będzie wyświetlał:
java.lang.NullPointerException at poligon.NPEnoSTMain.main(NPEnoSTMain.java:8)a po pewnym czasie już tylko:
java.lang.NullPointerExceptionDzieje się tak, gdyż JIT po wykryciu często rzucanego wyjątku zamieni go na preallocated (zcache'owany?) wyjątek - podczas tego procesu jest tracona informacja o StackTrace. Aby temu zapobiec, należy przekazać do JVM parametr:
-XX:-OmitStackTraceInFastThrowźródło
czwartek, 4 kwietnia 2013
Lista podłączonych użytkowników w PostgreSQL
SELECT * FROM pg_stat_activity WHERE datname = 'database_name';
Inline sed
Find-Replace w pliku za pomoca sed:
sed -e 's/find_str/replace_str/g' file.txtman sed:
s /wyrażenie regularne/zamiennik/flagi (2)
Podmień znalezione wyrażenia regularne na zamiennik (w bieżącym buforze tekstowym). Zamiast ‘/’ można użyć dowolnego znaku. Dla
dokładniejszego opisu zobacz ed (1). Flagi to zero lub więcej z następujących:
g -- Globalnie. Podmieniaj wszystkie niezachodzące na siebie instancje
łańcucha, a nie tylko pierwszą z nich.
p -- Drukuj przestrzeń wzorców po dokonaniu podmiany.
w -- Zapisuj. Doklej bieżący bufor tekstowy do argumentu plikowego, tak jak
w komendzie w (o ile zostanie dokonana podmiana). Standardowe wyjście
jest używane jeśli nie podano argumentu plikowego.
wtorek, 29 stycznia 2013
Bezhasłowa autoryzacja ssh (kluczem)
local$ ssh-keygen -t dsa local$ scp ~/.ssh/id_dsa.pub remote:~/ local$ ssh username@remote remote$ cat ~/id_dsa.pub >> ~/.ssh/authorized_keys remote$ chmod 644 ~/.ssh/authorized_keys remote$ exit local$ ssh username@remoteźródło
Subskrybuj:
Posty (Atom)