This commit is contained in:
Taro L. Saito 2011-08-16 11:16:44 +09:00
commit 1354d90401
2 changed files with 7 additions and 6 deletions

View File

@ -63,8 +63,8 @@
<artifactId>maven-compiler-plugin</artifactId>
<version>2.0.2</version>
<configuration>
<source>1.6</source>
<target>1.6</target>
<source>1.5</source>
<target>1.5</target>
</configuration>
</plugin>

View File

@ -51,7 +51,7 @@ import java.util.Properties;
* In default, no configuration is required to use snappy-java, but you can load
* your own native library created by 'make native' command.
*
* LoadSnappy searches for native libraries (snappyjava.dll, libsnappy.so, etc.)
* This SnappyLoader searches for native libraries (snappyjava.dll, libsnappy.so, etc.)
* in the following order:
* <ol>
* <li>(System property: <i>org.xerial.snappy.lib.path</i>)/(System property:
@ -132,7 +132,7 @@ public class SnappyLoader
/**
* Load SnappyNative and its JNI native implementation in the root class
* loader. This is necessary to avoid the JNI multi-loading issue when the
* loader. This process is necessary to avoid the JNI multi-loading issue when the
* same JNI library is loaded by different class loaders in the same JVM.
*
* In order to load native code in the root class loader, this method first
@ -171,13 +171,14 @@ public class SnappyLoader
try {
if (!hasInjectedNativeLoader()) {
// Prepare SnappyNativeLoader or LocalSnappyNativeLoader
// Inject SnappyNativeLoader (src/main/resources/org/xerial/snappy/SnappyNativeLoader.bytecode) to the root class loader
Class< ? > nativeLoader = injectSnappyNativeLoader();
// Load the JNI code
// Load the JNI code using the injected loader
loadNativeLibrary(nativeLoader);
}
isLoaded = true;
// Look up SnappyNative, injected to the root classloder, using reflection to order to avoid the initialization of SnappyNative class in this context class loader.
api = (SnappyNativeAPI) Class.forName("org.xerial.snappy.SnappyNative").newInstance();
}
catch (Exception e) {