如何重建jna-4.1.0.jar文件以包含linux-s390x特定的libjnidispatch.so文件。
这是我的一个应用程序所需要的,并且对此libjnidispatch.so文件的依赖性失败。
尝试关注此问题:How to use JNAerator with multiple dynamic libraries under one header?
使用的语法:
java -jar jnaerator-0.11-shaded.jar \
> -arch linux-s390x linux-s390x/libjnidispatch.so \
> -mode jna-3.3.0-jenkins-3.jar \
> -jar jna-3.3.0-jenkins-3_updated.jar
获得以下错误:
ERROR: JNAeration failed !
#
# Error parsing arguments :
# -arch linux-s390x linux-s390x/libjnidispatch.so -mode jna-3.3.0-jenkins-3.jar -jar jna-3.3.0-jenkins-3_updated.jar : com.ochafik.lang.jnaerator.JNAerator$CommandLineException: Argument 'linux_s390x' is not one of the expected values :
# linux_x64,
# linux_x86,
# armeabi,
# sunos_x86,
# sunos_sparc,
# darwin_universal,
# win32,
# win64
# Please use -h for help on the command-line options available.
答案 0 :(得分:0)
确保安装了JDK,使用Apache ant和本机构建工具(make,gcc,grep等)。
然后运行ant native; ant jar
。
请注意,s390x可能无法识别,但如果您查看构建文件以了解其他平台的处理方式,则可以直接在s390x的交换机中添加(请参阅build.xml和native / Makefile) )。
如果您有以前JNA版本的软件包分发,那么该软件包可能包含必要的软件包,如果是这样,请考虑将它们作为github pull请求提交给JNA项目,以便将它们合并到项目中。