RFR: 8067951: System.loadLibrary cannot find library when path contains quoted entry

Ivan Gerasimov ivan.gerasimov at oracle.com
Sun Jan 4 20:10:47 UTC 2015

Hi Peter!

> There were other cases where one wanted to consolidate duplicated 
> code, but couldn't easily because of subtle differences among OS 
> platforms (UNIXProcess is one of such cases). Perhaps we need 
> something like this:
> http://cr.openjdk.java.net/~plevart/misc/OS/webrev/
> With this compile-time mechanism, one can use switch or if statements 
> in common class to cover subtle differences and only divide code into 
> OS platform specific classes where the bulk of it differs.

I think this mechanism might be useful as a slightly more efficient way 
of determining the OS, comparing to reading "os.name" property.
However, grep found only 8 occurrences of "os.name" usage in 
src/java.base, so I guess it wouldn't make much difference.

In this particular case, it seems to be easier to just introduce another 
helper class, which has only two realizations: for all Unixes, including 
MacOS and for Windows.
I named it ClassLoaderHelper2, and I'm open for a better name for it.

Would you please take a look at the updated webrev?

Sincerely yours,

More information about the core-libs-dev mailing list