首页 热点专区 义务教育 高等教育 出国留学 考研考公

Java 在eclipse中,web项目如何加载.so文件的详细步骤

发布网友

我来回答

1个回答

热心网友

引入jna.jar包。 然后写一个接口类继承Library来和.so(linux平台)或.dll(windows平台)文件交互。接口中对应的方法为so中的方法,大小写都需要完全一致,同时参数类型也需要注意,jna和so中的参数类型的对应转换。

以下是代码是大概例子,你可以看一下,是有参数的对应格式的。其中,Native.loadLibrary为加载链接库文件。

public interface LibVlc extends Library {


    Info INFO = Info.getInstance();

    LibVlc INSTANCE = (LibVlc)Native.loadLibrary(RuntimeUtil.getLibVlcLibraryName(), LibVlc.class);

    LibVlc SYNC_INSTANCE = (LibVlc)Native.synchronizedLibrary(INSTANCE);

    String libvlc_errmsg();

    void libvlc_clearerr();

  
    libvlc_instance_t libvlc_new(int argc, String[] argv);
}

热心网友

引入jna.jar包。 然后写一个接口类继承Library来和.so(linux平台)或.dll(windows平台)文件交互。接口中对应的方法为so中的方法,大小写都需要完全一致,同时参数类型也需要注意,jna和so中的参数类型的对应转换。

以下是代码是大概例子,你可以看一下,是有参数的对应格式的。其中,Native.loadLibrary为加载链接库文件。

public interface LibVlc extends Library {


    Info INFO = Info.getInstance();

    LibVlc INSTANCE = (LibVlc)Native.loadLibrary(RuntimeUtil.getLibVlcLibraryName(), LibVlc.class);

    LibVlc SYNC_INSTANCE = (LibVlc)Native.synchronizedLibrary(INSTANCE);

    String libvlc_errmsg();

    void libvlc_clearerr();

  
    libvlc_instance_t libvlc_new(int argc, String[] argv);
}

热心网友

引入jna.jar包。 然后写一个接口类继承Library来和.so(linux平台)或.dll(windows平台)文件交互。接口中对应的方法为so中的方法,大小写都需要完全一致,同时参数类型也需要注意,jna和so中的参数类型的对应转换。

以下是代码是大概例子,你可以看一下,是有参数的对应格式的。其中,Native.loadLibrary为加载链接库文件。

public interface LibVlc extends Library {


    Info INFO = Info.getInstance();

    LibVlc INSTANCE = (LibVlc)Native.loadLibrary(RuntimeUtil.getLibVlcLibraryName(), LibVlc.class);

    LibVlc SYNC_INSTANCE = (LibVlc)Native.synchronizedLibrary(INSTANCE);

    String libvlc_errmsg();

    void libvlc_clearerr();

  
    libvlc_instance_t libvlc_new(int argc, String[] argv);
}

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com