snap是什么?
snap
是一种全新的软件包治理形式,它相似一个容器领有一个应用程序所有的文件和库,各个应用程序之间齐全独立。所以应用snap包的益处就是它解决了应用程序之间的依赖问题,使应用程序之间更容易治理。然而由此带来的问题就是它占用更多的磁盘空间。
snap的安装包扩展名是.snap
,相似于一个容器,它蕴含一个应用程序须要用到的所有文件和库(snap包蕴含一个公有的root文件系统,外面蕴含了依赖的软件包)。它们会被装置到独自的目录;各个应用程序之间互相隔离。应用snap有很多益处,首先它解决了软件包的依赖问题;其次,也使应用程序更容易治理。
当初反对snap的利用并不多,snap软件包个别装置在/snap
目录下。
如何装置snap?
在ubuntu零碎中,snap是零碎默认自带的,docker容器中ubuntu零碎官镜像中则没有,大部分linux发行版也没有自带snap,须要额定装置,这里演示debian
系发行版如何装置snap。centos等rpm系发行版装置snap的步骤能够参考这篇文章https://www.linuxidc.com/Linux/2020-03/162485.htm
配置apt的阿里源
默认ubuntu
的apt软件源
在国内拜访过慢,常常会导致装置失败,这里应用sed
命令对apt软件源
进行替换,换成阿里的apt软件源
。
sed -i s@/archive.ubuntu.com/@/mirrors.aliyun.com/@g /etc/apt/sources.listsed -i s@/security.ubuntu.com/@/mirrors.aliyun.com/@g /etc/apt/sources.listapt-get cleanapt-get update
装置snap
sudo apt-get install snapd
应用snap装置jdk
sudo snap install openjdk
将JDK增加到环境变量中
仔细的同学可能曾经发现,应用snap装置openjdk,还是无奈在命令中运行java相干的命令,这是因为咱们还没有把jdk配置到环境变量中。
在命令中输出openjdk能够取得openjdk的配置文件地址
openjdk// 例如输入// /var/snap/openjdk/common/openjdk.env
应用cat命令输入查看配置文件内的内容
cat /var/snap/openjdk/common/openjdk.env
例如我这里输入的如下:
# Source this file for OpenJDK environment variables and aliasesexport JAVA_HOME=/snap/openjdk/714/jdkexport MANPATH=/snap/openjdk/714/jdk/man:alias java='openjdk.java'alias javac='openjdk.javac'alias javadoc='openjdk.javadoc'alias jar='openjdk.jar'alias jarsigner='openjdk.jarsigner'alias jlink='openjdk.jlink'alias jpackage='openjdk.jpackage'
复制配置文件的输入,用vim
获取其余编辑器关上/etc/profile
文件(留神,有些时候须要sudo
),将复制的配置内容,增加到/etc/profile
文件最初面。
刷新环境变量
source /etc/profile
此时能够在终端中查看java版本信息,如果能够成输入,阐明配置胜利了。(有些时可能须要重启下电脑)
java --version// 输入样例// openjdk 17.0.2 2022-01-18// OpenJDK Runtime Environment (build 17.0.2+8-snap)// OpenJDK 64-Bit Server VM (build 17.0.2+8-snap, mixed mode, sharing)