I need to debug a resolver problem and in order to do this, I have to add some output to the bnd/bndtools code.
I thought this would be easy, because all subprojects in bnd/ have their .project and .classpath files. So I simply imported everything. Now I have a lot of classpath errors because basic libraries such as the osgi framework (all org.osgi.* imports) and the junit libraries are missing.
Obviously I’m missing something. Can somebody please help me out?
Found it. There are several cnf-projects in the tree and the import with nested subprojects picked the wrong one (of course).
The Resolver is a hard nut to debug. It writes a log though. If you have a resolve process that runs a bit longer, you can cancel the job and you can mark that you don’t want that the logfile isn’t deleted afterwards.
It’s not the most convenient way, but we haven’t managed to improve the wizard yet.
Luckily, I don’t need to debug the resolver. The problem is “only” the capability comparator that seems to be unstable for my repository (java.lang.IllegalArgumentException: Comparison method violates its general contract!).