将 DLL 注入 Java

Posted

技术标签:

【中文标题】将 DLL 注入 Java【英文标题】:Swig a DLL into Java 【发布时间】:2011-05-31 20:22:14 【问题描述】:

有人知道是否可以使用 Swig 为带有捆绑 C 头文件的 DLL 生成 Java 接口?如果您有源代码 (http://www.swig.org/Doc1.3/Java.html),有很多教程描述了该怎么做。

【问题讨论】:

【参考方案1】:

即使您只有头文件和 DLL,您链接到的教程中的所有信息仍然是相关的。您所需要的只是标题和链接它的库。

那么你有两个选择。您可以让您的构建过程将 SWIG 生成的代码与现有 DLL 链接起来,或者您可以使用这样的东西:

%pragma(java) jniclasscode=%
  static 
    try 
        System.loadLibrary("mylibrarythatIonlyhaveaDLL");
        System.loadLibrary("swigmodule");
     catch (UnsatisfiedLinkError e) 
      System.err.println("Native code library failed to load. \n" + e);
      System.exit(1);
    
  
%

在您的接口文件中强制在 SWIG 生成的接口之前加载 DLL。

【讨论】:

以上是关于将 DLL 注入 Java的主要内容,如果未能解决你的问题,请参考以下文章