When PluginInstantiator tries to load Plugin types without
the first constructor signature that is called, the gij
interpreter throws a IncompatibleClassChangeError.
The first constructor that is tried has String and
PropertySet arguments, which is not implemented by
StatusBasedFileWriterPlugin for instance. I presume other
classes without this constructor are also affected.
This problem is not evident with the Sun runtime, so may
well be a bug with libgcj. So far, I have not been able to
write a simple test case that reproduces the issue
independently of JSpider.
A workaround is to add a constructor with throw away
arguments.
/**
* Work around for libgcj compatibility.
*/
public StatusBasedFileWriterPlugin (String name,
PropertySet config) {
this();
}
The GNU CLASSPATH project to which libgcj belongs is defunct. It never really progressed beyond Java 1.2: it hasn't been updated since 2012; and the companion GCJ Java compiler project was terminated some years ago. Closing as out of date.
Last edit: EJP 2021-07-14