So it seems that the file manager cannot find the unmodifiable class but when it comes to listing classes it requests net.multiphasicapps.util, but since the unmodifiable stuff is in another package that is not found. So perhaps the prefix is for sub packages to, but not too sure of that.


There actually is the recurse flag, and I bet I do not use it or use it incorrectly.


But, recursive is set to false. So it is possible that the guessed package name for a project is not correct which might be messing some things up?


And the unmodifiable collections seems correct.


So the unmodifiable map does appear in the list of classes which are available which means if it searched correctly it would be found.


Ok so with DEBUG -- list(PLATFORM_CLASS_PATH, net.multiphasicapps.util.unmodifiable, [CLASS], false) it appears that it is actually looking for the unmodifiable package, but only in the platform class path before giving up.


But it does not reach the end of execution, which means it returns at some point.


I do know that the Java compiler hides exceptions, so some kind of search or inclusion must be failing.


And I then get java.io.IOException: CJ07 net/multiphasicapps/util/ unmodifiable/UnmodifiableList$__ListIterator__.class.


CJ07 is file not found in the ZIP. So I should have another class that is a ZipException, but is just not found.


Actually contains in the ZIP code was incorrect because the get in the ZIP class does not return null on failure, it throws an exception. So in this case I just catch and check.