首页 新闻 会员 周边 捐助

java可以使用JNI调用C语言编译的so库,那么可以调用python编译的so库,望分享相关demo或资料

0
悬赏园豆:50 [待解决问题]

如题,如有相关经验,希望能分享相关资料或demo

skycity_3366的主页 skycity_3366 | 初学一级 | 园豆:152
提问于:2021-10-14 14:23
< >
分享
所有回答(2)
0

"java可以使用JNI调用C语言编译的so库" 这一步你实现了, python 可以直接调 jar 包

〆灬丶 | 园豆:2314 (老鸟四级) | 2021-10-14 14:32

1、我的意思是python编译出来的so库,java能否通过jni调用;
2、“python可以直接调jar包”的意思是把python源码封装成jar,然后再使用java调用是吗?

支持(0) 反对(0) skycity_3366 | 园豆:152 (初学一级) | 2021-10-14 18:41

@skycity_3366:

答复1:
感觉标题因该是
《Java 可以使用 JNI 调用 C语言编译的so库,那么python编译的so库, Java 如何调用,望分享相关demo或资料》
我第一遍理解成, 你想获取 python 编译 so 库的资料; 
PS:Java 如何调 python 的包我就不知道了, 没涉及过

答复2:
"python 调 jar 包" 就是字面意思,通过 python 启动&执行
https://www.cnblogs.com/botoo/p/8038507.html
支持(0) 反对(0) 〆灬丶 | 园豆:2314 (老鸟四级) | 2021-10-15 09:16
0

Process是一个抽象类 封装了一个进程
Process p = Runtime.getRuntime().exec(cmd); cmd 是字符串类型 也可以是字符串类型的数组 内容就是 命令行
Process p =ProcessBuilder.start();

上面的cmd用 python命令执行?
python编译的so库 可以用 python命令执行?
再结合 Process类 不就可以 Java调用了?

https://blog.csdn.net/zrcode/article/details/76044425

快乐的欧阳天美1114 | 园豆:4006 (老鸟四级) | 2021-10-14 15:24

这种编码方式我已经实现了,主要感觉不太优雅,而且编码checklist一般是不允许这种调用方式的

支持(0) 反对(0) skycity_3366 | 园豆:152 (初学一级) | 2021-10-14 18:43
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册