Java Libjli库是用什么?

 2023-01-19    397  

问题描述

我正在使用JNI允许C代码在Java中完成一些最佳的工作. 在这个问题中我试图链接 libjvm 和 libjli 我的代码工作的库,但是现在我质疑我是否需要 jli 库.

我找不到任何清楚说明 jli 库的目的的文档.

Java Libjli库是用什么?

另一个如此问题提示在 jli 是OSX PassThrough库:

#elif defined(__APPLE__)
// jli needs to be loaded on OSX because otherwise the OS tries to run the system Java

此博客:

在OS X上编译时,将JLI库链接到JVM库

非常重要.

我的问题:

  1. 什么是 jli 图书馆?
  2. 我是否需要C/Java JNI 仅REDHAT/仅Centos环境(无OSX)?

推荐答案

什么是JLI库?

libjli.so包含一个启动器接口,用于准备在命令行中传递的参数并使用它们启动虚拟机.

发射器 main.c 是所有Java程序中的主要入口点.它准备C命令行参数并将其传递到JLI_Launch函数中,该函数执行参数解析,加载虚拟机来自libjvm.so,然后分叉原始线程,然后java.net/jdk/jdk12/file/06222165c35f/src/hotspot/share/share/prims/jni.cpp#l4015″ rel =” nofollow noreferrer”

我需要它用于redhat/for centos环境中的c/java jni开发(no osx)?

非常不可能.如果您需要的话,可能是可能做错了什么.至少我无法想象任何有用的通用用例.

以上所述是小编给大家介绍的Java Libjli库是用什么?,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对77isp云服务器技术网的支持!

原文链接:https://77isp.com/post/25831.html

=========================================

https://77isp.com/ 为 “云服务器技术网” 唯一官方服务平台,请勿相信其他任何渠道。