What to do when Gradle raises unexpected NoClassDefFoundException

I have just lost an hour thanks to some obscure bug in Gradle caching mechanism. If all of the sudden, Gradle raises Frankenstein errors at you like $ gradle clean build :buildSrc:compileJava UP-TO-DATE :buildSrc:compileGroovy Note: /Users/manu/projects/notbackedup/git/core/buildSrc/src/main/groovy/org/hibernate/gradle/testing/database/DatabaseMatrixPlugin.java uses unchecked or unsafe operations. Note: Recompile with -Xlint:unchecked for details. >>> a serious error occurred: hudson/util/DBAllocation >>> stacktrace: java.lang.NoClassDefFoundError: hudson/util/DBAllocation at java.lang.Class.getDeclaredMethods0(Native Method) at java.lang.Class.privateGetDeclaredMethods(Class.java:2427) at java.lang.Class.getDeclaredMethods(Class.java:1791) at org.codehaus.groovy.vmplugin.v5.Java5.configureClassNode(Java5.java:318) at org.codehaus.groovy.ast.ClassNode.lazyClassInit(ClassNode.java:263) at … [...]

Packt Open Source Awards and some reflections on CMSes

Packt Publishing, a fairly known technical book publisher is organizing an Open Source Awards contest. Some of the categories are interesting like mobile toolkit and libraries, business applications (always tough for OSS software), Javascript libs and multimedia. It’s funny to see the categories evolve over time. Back in my days, it used to be … [...]

How to change Time Machine backup frequency

Apple’s Time Machine is great to always get your system backed up without you having to do anything. But the backup frequency can be a bit to aggressive for some. The default value is to backup every hour. You can change that using the following command in a Terminal window: sudo defaults write /System/Library/LaunchDaemons/com.apple.backupd-auto StartInterval … [...]

Awestruct: building dynamic static web sites

I’ve been wanting to update my personal site for a while as it was done in iWeb and Apple is basically killing the product. Through discussions at Red Hat, I tried Awestruct, a tool to generate static web sites while still benefitting from templating, blog support and other kind of neat automations. Awestruct is a … [...]

Mac OS X and IntelliJ crashes

I’ve struggled in the past several weeks with repeated crashes from IntelliJ IDEA on Mac OS X. I suspect it started right after the upgrade to 1.6.5 and the latest Java VM update. It seems it was cause by a couple of things. Job scheduler crash If your crash report shows something like Thread 55 Crashed: Java: … [...]

To Tor or a Tort

Last night, I read some articles about Tor. Tor is an anonymous network that redirects your communications securely and anonymously across the Tor network before entering the public internet. It prevents people from finding who / where you are and from spying on your internet connection. The idea is that the communication between you … [...]

IntelliJ's Live Template

If you remember, I like to write my getters this way (long story here) public String getName() { return this.name; } public void setName(String name) { this.name = name; } private String name; I have been doing it manually for a while but it turns out IntelliJ has a super nice feature for that: Live Templating which allows … [...]

Git: how my life has improved since last month when I used SVN

I’ve switched from SVN to Git (more git-svn actually) close to a month ago and that had to be a leap of faith. Rationally convincing someone that a DVCS is better is pretty hard because overall the life in SVN land is not that bad or does not appear to be. Note that I … [...]

SVN: false promises

I’ve had to do a massive project refactoring. To be more specific, I had to split Hibernate Annotations in several pieces and make Hibernate Validator and Hibernate Search independent projects (stay tuned). Of course, I wanted to keep track of my changes history.Supposedly, SVN is greater than CVS in this area, it can keep … [...]