diff --git a/java/c/src/main/java/org/apache/arrow/c/jni/JniWrapper.java b/java/c/src/main/java/org/apache/arrow/c/jni/JniWrapper.java index 04a143a7a99..9e1c19b100e 100644 --- a/java/c/src/main/java/org/apache/arrow/c/jni/JniWrapper.java +++ b/java/c/src/main/java/org/apache/arrow/c/jni/JniWrapper.java @@ -24,6 +24,7 @@ public class JniWrapper { private static final JniWrapper INSTANCE = new JniWrapper(); public static JniWrapper get() { + JniLoader.get().ensureLoaded(); return INSTANCE; } @@ -34,7 +35,6 @@ private JniWrapper() { throw new UnsupportedOperationException( "The Java C Data Interface implementation is currently only supported on 64-bit systems"); } - JniLoader.get().ensureLoaded(); } public native void releaseSchema(long memoryAddress); diff --git a/java/dataset/src/main/java/org/apache/arrow/dataset/file/JniWrapper.java b/java/dataset/src/main/java/org/apache/arrow/dataset/file/JniWrapper.java index f69d8205192..6e65803a333 100644 --- a/java/dataset/src/main/java/org/apache/arrow/dataset/file/JniWrapper.java +++ b/java/dataset/src/main/java/org/apache/arrow/dataset/file/JniWrapper.java @@ -27,11 +27,11 @@ public class JniWrapper { private static final JniWrapper INSTANCE = new JniWrapper(); public static JniWrapper get() { + JniLoader.get().ensureLoaded(); return INSTANCE; } private JniWrapper() { - JniLoader.get().ensureLoaded(); } /** diff --git a/java/dataset/src/main/java/org/apache/arrow/dataset/jni/JniWrapper.java b/java/dataset/src/main/java/org/apache/arrow/dataset/jni/JniWrapper.java index 7dd54e7648f..9bd0ec7df8c 100644 --- a/java/dataset/src/main/java/org/apache/arrow/dataset/jni/JniWrapper.java +++ b/java/dataset/src/main/java/org/apache/arrow/dataset/jni/JniWrapper.java @@ -25,11 +25,11 @@ public class JniWrapper { private static final JniWrapper INSTANCE = new JniWrapper(); public static JniWrapper get() { + JniLoader.get().ensureLoaded(); return INSTANCE; } private JniWrapper() { - JniLoader.get().ensureLoaded(); } /** diff --git a/java/dataset/src/main/java/org/apache/arrow/dataset/jni/NativeMemoryPool.java b/java/dataset/src/main/java/org/apache/arrow/dataset/jni/NativeMemoryPool.java index 83825776b76..e20e1e351c5 100644 --- a/java/dataset/src/main/java/org/apache/arrow/dataset/jni/NativeMemoryPool.java +++ b/java/dataset/src/main/java/org/apache/arrow/dataset/jni/NativeMemoryPool.java @@ -23,10 +23,6 @@ public class NativeMemoryPool implements AutoCloseable { private final long nativeInstanceId; - static { - JniLoader.get().ensureLoaded(); - } - private NativeMemoryPool(long nativeInstanceId) { this.nativeInstanceId = nativeInstanceId; } @@ -35,6 +31,7 @@ private NativeMemoryPool(long nativeInstanceId) { * Get the default memory pool. This will return arrow::default_memory_pool() directly. */ public static NativeMemoryPool getDefault() { + JniLoader.get().ensureLoaded(); return new NativeMemoryPool(getDefaultMemoryPool()); } @@ -44,6 +41,7 @@ public static NativeMemoryPool getDefault() { * from the listener in advance. */ public static NativeMemoryPool createListenable(ReservationListener listener) { + JniLoader.get().ensureLoaded(); return new NativeMemoryPool(createListenableMemoryPool(listener)); }