Daniel Kulp wrote:
Balaji started working a little bit on this this morning and ran into some snags. I'm not sure how far he got, but it MAY not be possible with the way the Maven surefire plugin works. If you look at the code for java.rmi.RMIClassLoader, the initialize method does:
                Class providerClass =
                    Class.forName(providerClassName, false,
                                  ClassLoader.getSystemClassLoader());

Thus, the class has to be on the SYSTEM classpath, it doesn't use any type of context classloader. When maven "forks" surefire, it sets a system classpath that ONLY contains the Surefire stuff which then loads the project classpath in an internal classloader.

Anyway, the code probably works, but I'm not sure how to get surefire to actually use it. We MAY need to put just that class in a separate jar and maybe add a "<argLine>-Xbootclasspath/p:thatjar</argLine>" section to the surefire config. (requires forking be turned on) I'm not really sure yet.

Yeah, need to have forking turned in, IIUC.

Regards,
Alan

Reply via email to