我能找到java.library.path映射到当前平台上的变量吗?
到目前为止,我已经了解了以下有关java.library.path属性的知识:
- 它在加载本机库时使用,而不是java类
- 其默认值取决于操作系统:
- 在 Windows 上,它映射到 PATH
- 在Linux上,它映射到LD_LIBRARY_PATH
- 在OS X上,它映射到DYLD_LIBRARY_PATH
(如果我误解了上述任何一项,请纠正我)
我的动机:
我想修改 Java 应用程序从我设置为调用 Java 应用程序的框架中看到的 java.library.path 的值。我想通过直接设置java.library.path属性来做到这一点,而是通过修改它映射到的系统路径变量来做到这一点。我想要一种干净的方式来做到这一点,没有丑陋的特定于操作系统的代码,或者如果可能的话,省略边缘情况。
我的问题:
有没有办法询问本地Java实现java.library.path映射到什么环境变量?
然后,在shell脚本中,我可以编写如下内容:
path_var = get_library_path_variable # the magic function I want to call
${path_var} = /my/custom/path:${${path_var}}