各位:现在需要用Delphi调用Jar包。我开始写了一个JAVA文件调用Jar的测试例子,运行正常。当在Delphi中通过JNI调用时,提示类找不到。我测试用的JAVA文件如下所示
import com.nsn.cloud.hive.jdbc.delphi.function.*;  //需要引用的jar
public class Test1 {   
    public static void main(String[] args) {   
   System.out.println(DelphiJdbcInterface.getData("Wahaha",10));//调用Jar中DelphiJdbcInterface类的静态方法getData
    }   
       
}
我的delphi 代码如下所示 //我的工作目录是Y:\WorkSpace\JAVA\bin,Jar包和delphi可执行文件都在这里
  options[0].optionString := '-Djava.compiler=NONE';
  options[1].optionString := '-Djava.class.path=Y:\\WorkSpace\\JAVA\\bin\\com\\nsn\\cloud\\hive\\jdbc\\delphi\\function;Y:\\WorkSpace\\JAVA\\bin\\delphijdbc.jar';
  options[2].optionString := '-verbose:jni';   
  
  JNI.JNI_GetDefaultJavaVMInitArgs(@vm_args);
  vm_args.version := Jni.JNI_VERSION_1_4;   
  vm_args.options := @options;   
  vm_args.nOptions := 3;   
  vm_args.ignoreUnrecognized := Jni.JNI_TRUE;   
  
  rec := JNI.JNI_CreateJavaVM(@jvm, @env, @vm_args);
  if (rec = JNI_ERR) then begin
    writeln('不能创建 JVM');
  end else begin  
    Result := true;   
  end;  cid := env^.FindClass(env, 'DelphiJdbcInterface');  if cid=nil then
    begin
      writeln('查找类失败.'); //程序运行到这里退出
      goto lexit;
    end;