繁体   English   中英

在 JIB 插件中指定 -Djava.library.path

[英]Specifying -Djava.library.path in JIB plugin

我正在尝试使用 pom.xml 中的以下配置运行 JIB 插件

<configuration>
  <from>
     <image>{artifactory-location}/container-release/managedbaseimages/oracle-jdk:11-stable</image>
  </from>
  <to>
    <image>{artifactory-location}/container-sandbox/abc/bot-sample-image</image>
  </to>
  <container>
    <creationTime>${maven.build.timestamp}</creationTime>                           
    <jvmFlags>
      <jvmFlag>-Djava.library.path=.</jvmFlag>
      <jvmFlag>-Dlog4j2.configurationFile=log4j2_default.xml</jvmFlag>
    </jvmFlags>
<!--<args>-->
<!--  <arg>-Djava.library.path</arg>-->
<!--  <arg>.</arg>-->
<!--</args>-->
  </container>
</configuration>

当我尝试 docker 运行图像时,我面临以下错误,尽管文件夹中存在 jni.so 文件(我也尝试提供不同的文件夹位置):

ERROR StatusLogger Reconfiguration failed: No configuration found for '4b85612c' at 'null' in 'null'
22:02:21.085 [main] ERROR TRACE.Casp - no casp_jni in java.library.path: [.]
java.lang.UnsatisfiedLinkError: no casp_jni in java.library.path: [.]
        at java.lang.ClassLoader.loadLibrary(ClassLoader.java:2660) ~[?:?]
        at java.lang.Runtime.loadLibrary0(Runtime.java:827) ~[?:?]
        at java.lang.System.loadLibrary(System.java:1871) ~[?:?]

该应用程序运行良好,我使用以下方法运行:

java -Djava.library.path=. -jar bot_sample.jar

容器入口点设置为[java, -Djava.library.path=., -Dlog4j2.configurationFile=., -cp, /app/resources:/app/classes:/app/libs/*, com.abc.def.bot.Main]

我能够通过将基本映像更改为:containerregistry-na.jpmchase.net/container-release/managedbaseimages/openjdk/jre:11-stable 来解决这个问题

并使用以下命令将.so 文件从我的本地复制到 /usr/lib:

<extraDirectories>
                            <paths>
                                
                                <path>src/main/java/native</path>
                                <path>
                                    <from>src/main/java/native</from>
                                    <into>/usr/lib</into>
                                </path>
                            </paths>

</extraDirectories>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM