当前位置: 首页 > 知识库问答 >
问题:

将Android JNI共享库“.so”导入Java Netbeans项目?

楚嘉
2023-03-14

我有一个共享库,。因此库具有JNI接口。。因此,库是在Visual C 2017中构建的,支持Android。现在我想导入。所以,将这个库转换成Java Netbeans项目——有可能吗?

共有1个答案

栾景胜
2023-03-14

我是通过这些帖子得到的:

http://electrofriends.com/articles/jni/jni-part1-java-native-interface/

http://electrofriends.com/articles/jni/part-2-jni-visual-studio-setup-dll-project/

包括Netbean中的本地图书馆

1.-使用DLL项目或C库在Visual Studio中创建JNI库。dll或。对于Android,没有空项目,并使用JDK参考:

a、 -在Visual Studio中转到项目-

b、 -在左侧,选择C/C,在其他包含目录中添加jdk include和win32 path。如果在c程序文件中安装了jdk,那么路径是

C:\Program Files\Java\jdk1。6.0_18\包括:;C:\Program Files\Java\jdk1。6.0_18\include\win32

如果JDK是64位平台形式,则DLL必须编译为x64。

2.-在Netbeans中:

a、 -右键单击项目属性

B.-点击运行

c、 -在VM选项文本框中添加:

-Djava.library.path="C:\Your Directory where Dll is present".

c、 -最后调用c方法:

System.loadLibrary("JNILibreria");

完整的dll名称是例如JNILibreria.dll.

 类似资料:
  • 问题内容: 说我有a.so和b.so。我是否可以将c.so生成为具有a和b导出的所有功能的单个共享库,当然可以解决所有内部依赖关系(即a.so调用的b.so的所有功能,反之亦然)? 我试过了 但这不起作用。 如果我在aa和ba中归档ao和bo(也不应修改ao和bo),也是如此 谢谢 问题答案: 除了AIX之外,在所有UNIXen上实际上都不可能将多个共享库合并为一个:链接器将.so视为“最终”产品

  • 问题内容: 我参与了有关Linux库的一些辩论,并想确认一些事情。 以我的理解(如果我做错了请纠正我,稍后我将编辑我的文章)在构建应用程序时有两种使用库的方式: 静态库(.a文件):在链接时,会将整个库的副本放入最终应用程序中,以便调用方应用程序始终可以使用库中的功能 共享对象(.so文件):在链接时,仅通过相应的标头(.h)文件针对其API验证了对象。该库直到需要运行时才真正使用。 静态库的明显

  • 库用于将相似函数打包在一个单元中。然后这些单元就可为其他开发人员所共享,并因此有了模块化编程这种说法— 即,从模块中构建程序。Linux支持两种类型的库,每一种库都有各自的优缺点。静态库包含在编译时静态绑定到一个程序的函数。动态库则不同,它是在加载应用程序时被加载的,而且它与应用程序是在运行时绑定的。 使用共享库的方法有两种:您既可以在运行时动态链接库,也可以动态加载库并在程序控制之下使用它们。本

  • 我刚开始使用IntelliJ,我的SharedLibrary越来越大,所以我想搬到IDE。我明白了。gdsl用于自动完成等(基本工作:) 但是,当我的脚本使用@库符号时,我得到了错误(无法解析符号等),我是java世界中的“孩子”(. net日报),我想我错过了一些Jenkins依赖项,但哪一个? 此项目仅适用于共享库,其他:)有什么提示吗?

  • 问题内容: 我正在尝试建立一个共享库。让我们说libabc.so。它使用另一个.so文件,例如lib123.so(/ usr / local / lib中的一个lib)。现在我在我的应用程序中使用共享的liblibabc.so。说我的应用程序。我想知道我应该如何链接这些二进制文件?我不想直接将我的应用程序与lib123.so链接。my- app应该仅与libabc.so链接。我怎样才能做到这一点?

  • 每个应用都会有自己的导航,为了让每个应用都能很方便共享自己的导航数据,我们需要一种良好的应用间导航共享机制,而这种机制就是程序内部可以访问的内部 api. 导航配置文件 导航配置文件就是用于配置应用有哪些导航api,此文件会返回一个数组,数组的子项就一个应用内部 api 链接的地址,但不用带应用名; 导航配置文件是位于应用根目录下的nav.php文件,以 portal 应用为例,就是 app/po