这是我安装zulu jdk的方式:
wget https://cdn.azul.com/zulu/bin/zulu18.32.13-ca-jdk18.0.2.1-linux_x64.tar.gz
mv zulu18.32.13-ca-jdk18.0.2.1-linux_x64.tar.gz /opt
cd /opt
tar -zxvf zulu18.32.13-ca-jdk18.0.2.1-linux_x64.tar.gz
vim ~/.bash_profile
export JAVA_HOME=/opt/zulu18.32.13-ca-jdk18.0.2.1-linux_x64
export CLASSPATH=$:CLASSPATH:$JAVA_HOME/lib/
export PATH=$PATH:$JAVA_HOME/bin
source ~/.bash_profile
所有文件存储在/opt/zulu18.32.13-ca-jdk18.0.2.1-linux_x64
.
sudo ls /opt/zulu18.32.13-ca-jdk18.0.2.1-linux_x64
bin conf demo DISCLAIMER include jmods legal lib man readme.txt release Welcome.html
我想存储/opt/zulu18.32.13-ca-jdk18.0.2.1-linux_x64/bin
,/usr/bin
我知道我可以创建一个指向的链接 ,/usr/bin
tar 命令可以提取并保存/opt/zulu18.32.13-ca-jdk18.0.2.1-linux_x64/bin
在/bin
吗?/opt/zulu18.32.13-ca-jdk18.0.2.1-linux_x64/lib
/lib
这些只是存档文件。你可以在任何你想要的地方提取它们。
但是,将它们提取到其内容位于系统安装文件旁边的位置会导致灾难。
当您发布二进制软件时,您通常必须发布使用完全正确版本的库,因为用户的系统可能没有与您的开发系统相同的版本,或者根本没有。
因此,您复制了一个典型的 Linux 文件系统树并将您需要的所有东西放入其中,有几行 shell 代码弯曲了一些查找库和可执行文件的路径,并且很好。
但是,将用户的“本机”系统与该树合并将导致您覆盖用户的一些库、设置文件和程序。这将破坏用户的系统。
所以,不要那样做。故事结局。