Java 如何通过JNIRS导入JAR

Java 如何通过JNIRS导入JAR,java,rust,java-native-interface,ffi,Java,Rust,Java Native Interface,Ffi,我试图在JNI-rs中使用一些依赖项。 以下是我需要使用的类: org.quartz public class JobDataMap extends org.quartz.utils.StringKeyDirtyFlagMap implements java.io.Serializable Maven: org.quartz-scheduler:ali-quartz:2.3.1-SNAPSHOT 因此,根据上述信息,我想我应该通过以下方式设置class.path: .option("

我试图在JNI-rs中使用一些依赖项。 以下是我需要使用的类:

org.quartz public class JobDataMap
extends org.quartz.utils.StringKeyDirtyFlagMap
implements java.io.Serializable
Maven: org.quartz-scheduler:ali-quartz:2.3.1-SNAPSHOT
因此,根据上述信息,我想我应该通过以下方式设置
class.path

.option("-Djava.class.path=/Users/slhmy/Workplace/traffic-simulation/traffic-simulation-web-rs/quartz-db/jars")
我已将相关jar放在以下路径:

quartz-db/jars/ali-quartz-2.3.1-SNAPSHOT.jar
但我还是找不到上课的机会

//这里很恐慌
让class_job_data_map=env.find_class(“org/quartz/JobDataMap”).unwrap();

是否有任何步骤我做错了或我有福格特?

假设此API是关于指定Java启动器的标准选项,您应该使用
-classpath…
而不是
-Djava.class.path=…
,并且路径必须指向jar文件本身或以
/*
结尾,谢谢。但是我无法通过
.option
设置
-classpath
。我尝试了
Xbootclasspath/a:
,此参数似乎已成功添加,但也无法解决我的CLASSNOTFOUND问题。很抱歉,我对JAVA设置不太熟悉。如果可以的话,我想知道这些与类相关的参数的具体用法。当结果相同时,如何确定一个选项已设置,另一个未设置?如果您不熟悉这些选项,我建议您尝试从命令行调用软件,以熟悉并排除与JNIAPI的交互作为错误源。一旦您了解了如何调用软件,请尝试使用rust和JNI重新生成命令。
note: run with RUST_BACKTRACE=1 environment variable to display a backtrace
Exception in thread "Thread-0" java.lang.NoClassDefFoundError: org/quartz/JobDataMap
Caused by: java.lang.ClassNotFoundException: org.quartz.JobDataMap
at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:581)
at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:178)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:522)