While compiling my project with Maven I got sometimes on my Linux (Gentoo actually) box the following error
[ERROR] BUILD ERROR
[INFO] ————————————————————————
[INFO] Error reading assembly descriptors: Error reading descriptor at: /var/www/app_src/src/main/assembly/package.xml: Cannot run program “env”: java.io.IOException: error=12, Cannot allocate memory
This was caused by not enough amount of swap memory on linux. After increasing to double size of physical memory all problems are gone.
I was inspired by this entry of Hudson Wiki.
Finally Netbeans 6.7 has been released a few days after Eclipse Galileo. You can see a quick review of new cool features at release information page.
Changes I’m interested most are better Maven integration, Hudson services integration, Platform enhancements (unpublished Platform 6.7 features page) and better performance.

Już jest! Do pobrania. Właśnie oglądam i chodzi podejrzanie wolno
ale widzę że ma kupę fajnych ficzerów. Pewnie nie zrobię relacji, bo będzie ich milion więc po co się dublować. Liczę, że Łukasz Splatch Dywicki zrobić jakieś ciekawe review.
To co od razu znalazłem, to w narzędziach zdalnych, jest połączenie z shellem linucha i można wszystko pięknie monitorować procesy, jest dostęp do plików, no i zwykły terminal. Strasznie mi się to podoba, bo mamy w pracy mnóstwo maszyn na linuxach i sporo się tam dzieje. Hmm, można np. logi podglądać
To je dobre! Jakby jaki Pepiczek powiedział.
A few days ago I’ve won another Netbeans Platform book. It’s The Definitive Guide to NetBeans Platform 6.5 by Heiko Böck.
It’s the prize for best answers in NetBeans Platform related quiz by Geerjan Wielenga.
The quiz was organized for NetBeans Platform training students on their mailing list.
It took me over hour to discover all answers. I’ve learned a lot because I’ve found many precious resources on NetBeans Platform. I suppose that was the main idea of making this quiz by Geertjan.

My new NetBeans Platform book
Dzisiaj czas jakiś walczyłem z dumpami Postgresowymi (wytworzonymi przez pg_dump), w których dane były umieszczone w postaci COPY.
Niestety cholerny pg_restore nie umie wciągnąć takich plików. Wykonywanie ich z linii komend (psql -f nazwa_pliku) lub z PgAdmina też nic nie dało.
Dla uściślenia fragment takiego dumpa wygląda tak:
COPY “acAclUserModules” (“AclId”, “TargetId”, “UserId”, “AclUserModuleVersionTs”, “TransactionId”, “LastChangeOwner”, “AclUserModuleDeleted”) FROM stdin;
809 23 1 2009-04-28 13:03:22.661+00 \N 2 2008-12-05 02:15:38.214436+00
810 56 1 2009-04-28 13:03:22.661+00 \N 2 2008-12-05 02:15:38.214436+00
811 29 1 2009-04-28 13:03:22.661+00 \N 2 2008-12-05 02:15:38.214436+00
\.
Oprócz komendy COPY zamiast INSERT, charakterystyczne jest źródło danych – stdin. Czyli wejście standardowe klawiatura lub plik, jeśli go przekierować. I właśnie takie jest rozwiązanie problemu
psql -d baza_danych -U user < plik_z_dumpem.sql
Do interpretera PostgreSQL jest przekierowywana zawartość pliku, tj. na jego wejście standardowe. I w ten sposób wciągamy dumpy z COPY zamiast INSERT.
Nadmienię tylko, że oczywiście tworząc dumpa mamy możliwość wyboru formatu wstawiania danych, czy COPY czy INSERT. Odsyłam do dokumentacji pg_dump. Musicie tylko zdawać sobie sprawę, że wersja z COPY jest dużo szybsza, ale za to nie można jej załadować z wygodnego w użyciu PgAdmina.
Polecam artykuł źródłowy.
Dużym problemem podczas tworzenia pluginów Netbeans jest bardzo długi czas ładowania testowej platformy. Przyczyną są wszystkie dodatkowe moduły, które są zainstalowane. Można zmniejszyć liczbę ładowanych modułów o te, które nie są nam potrzebne do testowania naszego pluginu. W zależności od tego czy tworzone moduły uruchamiamy oddzielnie, czy może razem spięte w Module Suite, proponuję dwa rozwiązania.
Dla pojedynczych modułów, po uruchomieniu Netbeans z naszym pluginem, otwieramy listę pluginów i wyłączamy jak leci wszystko po kolei, co tylko nie jest nam potrzebne. Po następnym uruchomieniu Nb będzie ładował się błyskawicznie. Ale, uwaga, zrobienie clean na projekcie kasuje nam wszystkie ustawienia…
Druga metoda jest trwalsza, ale tylko dla Module Suite. Klikamy prawym na naszym Suite i z properties wybieramy libraries. Tam odznaczamy wszystko prócz wymaganych zależności, w tym na pewno zostawiamy klastry platform9 i nb6.5 (obie wersje zależą od wersji Nb).
Ponieważ pozostawione moduły mają zależności do wyłączonych, podczas odpalania Nb zapłacze, że czegoś mu brakuje, ale wystarczy wcisnąć magiczny przycisk i popsute moduły zostaną wyłączone. Czas ładowania takiego Netbeansa to ok 3-4sek. Można jeszcze powyłączać poszczególne pluginy wewnątrz klastrów.
Zwróćcie uwagę, że wszystko co zaznaczycie/odznaczycie zostanie zapisane w pliku platform.properies sekcji Important files.
Sonar to bardzo złożone oprogramowanie do śledzenia jakości kodu w projekcie. Do tej pory nie można go było postawić używając Postgresa jako bazy przechowującej dane.
Dopiero programista niezwiązany z teamem Sonara postanowił dopisać brakujące wsparcie oraz rozwiązać kilka problemów kompatybilności typów bazodanowych. Z niecierpliwością śledziłem kolejne uaktualnienia bug reporta zgłoszonego przez tego programistę, aż ostanio pojawiło się fixed. I o to jest! Nowa wersja Sonara 1.9 zawiera poprawki, które pozwalają na zainstalowanie oprogramowania z bazą w Postgresie. W końcu.
Netbeans Platform creators recommend wrapping all external JARs into dedicated module. I don’t want to. I just want to include it in my module. The way to do it (described here) is to put all needed jars in release/modules/ext folder and adding some extra XML to project.xml
<class-path-extension>
<runtime-relative-path>ext/hexedit.jar</runtime-relative-path>
<binary-origin>release/modules/ext/hexedit.jar</binary-origin>
</class-path-extension>
Repeat this section for every jar put in ...ext folder.
Immediately you should see them in Libraries folder of you Project's view.
I’m during exploring Netbeans Platform architecture. I like it very much. As I already have a Netbeans Platform Certified Associate certificate, I plan to gain higher level Netbeans Certified Engineer.
To achieve that I have to write a Netbeans Platform plugin. It will be a IM client with various awesome features
My plans were commented by Geertjan Wielenga (Netbeans Documentation and Tutorials master writer) whom I met personally. Geertjan said that my plugin would qualified me as a Certified Engineer. Awesome!
So I’m developing it right now, at 1:20am as this is the only time when I don’t have to look after my children
I plan to put some early screenshots as soon as there will be something good to show.
W miniony weekend (28-29 III 2009) przeszedłem szkolenie z podstaw Netbean Platform. Szkolenie zorganizowane z ramienia Warszawa JUG, prowadziło dwóch miłych panów z Suna (Geertjan Wielenga i Karol Harezlak), którzy na codzień zajmują się rozwijaniem Netbeansów.
Na koniec szkolenia wszyscy uczestnicy otrzymali certyfikat, który jest pierwszym stopniem wtajemniczenia. W sumie oznacza “liźnięcie” tematu. Dalsza możliwość to Certified Engineer, o który mam zamiar się starać.

Netbeans Platform Certified Associate
Podczas szkolenia zdobyłem też najnowszą książkę Geertjana et al. za najciekawsze pytanie, o czym Geertjan wspomniał na swoim blogu

Ciekawostką jest, że Karol jest Polakiem, który od kilku lat pracuje w Pradze dla Suna, przy rozwoju modułu Mobility Netbeansów.
.jpg)
Ekipa szkolenia (ja robiłem zdjęcie)
.jpg)
Ekipa szkolenia (ze mną po środku, bo Łukasz robił zdjęcie