1.下载wildfly-openssl-1.0.4.Final源码,并解压。
    wget https://github.com/wildfly/wildfly-openssl/archive/1.0.4.Final.tar.gz
    tar -zxf wildfly-openssl-1.0.4.Final.tar.gz
    2.执行编译安装。
    cd wildfly-openssl-1.0.4.Final
    mvn install -DskipTests=true -Dmaven.javadoc.skip=true
    3.编译完成后,发现jar包中还是没有arm的so,需要参考第7章Question2修改源码,重新编译。
    问题一:编译wildfly-openssl-1.0.4.Final.jar时报错
    问题现象
    编译wildfly-openssl-1.0.4.Final.jar时报错:
    ../libwfssl/include/wfssl.h:41:17: fatal error: jni.h: No such file or directory
    image.jpeg
    可能原因
    在../libwfssl/include/下未找到名为jni.h的头文件,该类头文件是java自带的.h文件。
    处理步骤
    执行find命令全局搜索将java相关路径下的.h文件复制到对应的./libwfssl/include/目录下,重新编译即可。
    类似的报错问题皆可尝试用该种方法解决。
    问题二:编译wildfly-openssl-1.0.4.Final.jar后未生成ARM化jar包
    问题现象
    编译wildfly-openssl-1.0.4.Final.jar后未生成ARM化jar包。
    可能原因
    源码中的pom.xml文件中未定义linux-aarch64模块需自己手动定义。
    处理步骤
    按照解压后的目录格式创建linux-aarch64目录。如下图所示:
    cd /xxx/xxx/wildfly-openssl-1.0.4.Final
    mkdir linux-aarch6
    image.jpeg
    将linux-x86_64下的Makefile和pom.xml文件复制到创建的linux-aarch64目录下。如下图所示:
    image.jpeg
    编辑./pom.xml、./combined/pom.xml、./java/pom.xml、./linux-aarch64/pom.xml和./linux-aarch64/Makefile文件,修改或增加相关内容。

    • vim ./combined/pom.xml

    image.jpeg

    • vim ./combined/pom.xml

    image.jpeg

    • vim ./java/pom.xml

    image.jpeg

    • vim ./linux-aarch64/pom.xml

    image.jpeg

    • vim ./linux-aarch64/Makefile

    image.jpeg

    • vim ./pom.xml

    image.jpeg
    重新执行编译命令。
    查看编译结果。
    image.jpeg