If some optional tasks that depend on an old version of ASM are installed, patching fails with the following error: /home/jpountz/src/lucene-solr/lucene/common-build.xml:565: java.lang.IncompatibleClassChangeError: class org.objectweb.asm.commons.ClassRemapper has interface org.objectweb.asm.ClassVisitor as super class
The reason is that ClassRemapper is loaded from the right place, but ClassVisitor, its parent class, is loaded from the parent classpath which may be a different version.
It is easy to reproduce:
- download and extract ant-1.10.1 (latest version)
- run bin/ant -f fetch.xml -Ddest=system, this will add lib/asm-2.2.3.jar among other files
- run ant clean test at the root of lucene-solr.