如何使用linux-s390x特定的libjnidispatch.so重新构建jna-4.1.0.jar

时间:2015-04-21 03:37:40

标签: jna jnaerator

如何重建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.

1 个答案:

答案 0 :(得分:0)

克隆git repository

确保安装了JDK,使用Apache ant和本机构建工具(make,gcc,grep等)。

然后运行ant native; ant jar

请注意,s390x可能无法识别,但如果您查看构建文件以了解其他平台的处理方式,则可以直接在s390x的交换机中添加(请参阅build.xml和native / Makefile) )。

如果您有以前JNA版本的软件包分发,那么该软件包可能包含必要的软件包,如果是这样,请考虑将它们作为github pull请求提交给JNA项目,以便将它们合并到项目中。