java - 如何确定JNI(jogl)在运行时是否可用?

标签 java java-native-interface jogl

我正在处理a source-code visualization project使用处理核心库。处理库可以选择使用 jogl OpenGL 库来渲染图形,这确实提高了性能。但是,jogl 使用的 JNI 文件不一定在运行时可用,具体取决于谁在使用该项目以及在什么平台上使用。

目前,我们只是让用户指定是否要使用 OpenGL,但如果我们可以默认使用 OpenGL,并且仅在软件渲染不可用时才回退到软件渲染,那么显然会更好。处理库似乎并没有让这变得容易,您只应该指定渲染器一次,并且更改渲染器会带来......新颖的行为。

知道如何确定 jogl 所需的 JNI 是否可用并在运行时工作吗?

最佳答案

简单,只需尝试使用 loadClass 使用 ClassLoader 加载类即可并捕获 ClassNotFound 异常和 UnsatisfiedLinkError 来执行回退功能。

关于java - 如何确定JNI(jogl)在运行时是否可用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/172869/

相关文章:

java - spring 如何允许延迟加载?

java - JOGL颠倒渲染

java - 世界风点地标球场

java - 泛型中的编译类和运行时类

java - Maven 多模块依赖解析

java - CompletableFuture 异常处理程序链

Android JNI pthread_create "too many arguments, expected 1"

java - Android:从 NativeActivity 使用 JNI

java - jni CallStaticLongMethod 始终返回 0L

java - JOGL Opengl WriteCloneable 在 Eclipse 中