2023-01-20 335
我将创建一个使用JNI的Java项目.我想将项目部署为独立应用程序,但是某些模块也可以用作其他应用程序的库.
我想支持不同的平台,一切都应该尽可能痛苦.
据我所知,我有选择的Maven-nar-Plugin(现在没有更新了一年半),而本地马文 – plugin似乎对我来说似乎不太用户友好.
您对其中一个或我应该使用的建议有任何经验吗?
我仅将Maven-nar-Plugin用于独立的C/C ++应用程序,但为此效果很好.
至于JNI,几年来我已经在相当大的应用程序上使用了本机武器 – plugin.我们使用它允许我们的Java应用程序与仅提供C API的其他应用程序进行交互.我实际上发现它非常友好. 文档很不错很不错,但是解释了基本用法,但是您仍然必须处理C编译器和链接器以及构建所需的任何选项.
我们只将其传递给编译器和链接器命令和选项,源位置以及Javah文件位置,并且可以正常工作.我不得不说,由于我们与JNI所经历的所有痛苦,Maven插件是少数没有大麻烦的事情之一.
此演示文稿关于NAR插件斯坦福线性加速器中心的Mark Donszelmann比较了本地马文 – 包胶和Maven-nar-Plugin.从幻灯片3引用本机武物的利弊:
ProS
- 非常可配置
cons
- 没有用完了(没有默认值)
- 没有二进制依赖项
- 不是跨平台(不同平台的不同配置文件)
自一年以来,我已经使用了很多本机武器 – 帕金来交叉编译C和C ++源代码(每个平台选项都有一个配置文件,例如编译器,编译器选项,链接器选项,等等… ).
它像魅力一样工作,但在我的情况下我感到很孤单.
现在,我不明白为什么C/C ++开发器仍然使用另一个时代的Make或Cmake工具.
Maven更适合管理版本和依赖关系…
以上所述是小编给大家介绍的maven-nar-plugin vs本地马文 – plugin,哪个更好?,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对77isp云服务器技术网的支持!
原文链接:https://77isp.com/post/25977.html
=========================================
https://77isp.com/ 为 “云服务器技术网” 唯一官方服务平台,请勿相信其他任何渠道。
数据库技术 2022-03-28
网站技术 2022-11-26
网站技术 2023-01-07
网站技术 2022-11-17
Windows相关 2022-02-23
网站技术 2023-01-14
Windows相关 2022-02-16
Windows相关 2022-02-16
Linux相关 2022-02-27
数据库技术 2022-02-20
抠敌 2023年10月23日
嚼餐 2023年10月23日
男忌 2023年10月22日
瓮仆 2023年10月22日
簿偌 2023年10月22日
扫码二维码
获取最新动态