在linux上替换java/lib目录

x3naxklr  于 2021-07-13  发布在  Java
关注(0)|答案(2)|浏览(282)

要运行java,我需要库ld linux.so.3位于/lib目录中。我需要这个图书馆换个地方。如何指定java在不同的目录中查找它?例如/home/dan/libs/
编辑:我试着运行java-djava.library.path=/home/dan/libs
但是我还是得到了错误。/java:没有这样的文件或目录

trnvg8h3

trnvg8h31#

“java”程序不搜索ld linux。ldlinux是一个加载程序(因此得名),在可执行文件(在本例中是java)启动之前运行。这就是为什么shell报告java无法启动,而不是java报告它在初始化某些东西时遇到了问题。有一些方法可以改变ld-linux搜索可执行文件所需的其他共享库的位置,但它们不能用于ld-linux本身,因为(据我们观察)宇宙是因果的,时间是单向的。
我还没试过,但公认的答案是https://unix.stackexchange.com/questions/17428/moved-bin-and-other-folders-how-to-get-them-back (其中有人意外地将其/lib(包括/lib/ld linux*)移到了错误的位置)表示您可以显式运行指定的ld linux(可能是任何工作的),并让它运行您的可执行文件,这里是java(可能有适当的参数)。
但我想知道为什么你认为你需要改变ld linux,因为它实际上已经在程序运行后消失了。如果您只想更改加载的内容,ld\u library\u path和ld\u preload可以做到这一点,而不需要对ld linux做任何更改。

wz1wpwve

wz1wpwve2#

我从您的问题中了解到,您需要更改java环境变量以指向另一个目录。。
环境变量是在bashrc文件中设置的,因此要编辑此文件,请执行以下操作
1-打开终端

`CTRL + ALT + DEL`

2-打开bashrc文件进行编辑

nano ~/.bashrc

3-编辑java\u home变量如果exist of不存在,请执行以下操作

export JAVA_HOME= new Java path
export PATH=$PATH:$JAVA_HOME/bin

4-保存文件 CTRL +X + Y + Enter 5-应用更改

source ~/.bashrc

相关问题