这是我第一次在Ubuntu中安装软件包。我对apt
命令了解不多。当我直接在命令窗口中输入java
时,出现以下消息:
XXX@nwtjkswskuae4w6f-0717825:~$ java
The program 'java' can be found in the following packages:
* default-jre
* gcj-4.8-jre-headless
* openjdk-7-jre-headless
* gcj-4.6-jre-headless
* openjdk-6-jre-headless
Ask your administrator to install one of them
我的问题是:
- 这些消息是如何产生的?我的意思是,当我输入
java
或其他命令时,shell如何在以下包中找到程序? - 在哪里可以找到像'gcj-4.8-jre-headless'或'openjdk-7-jre-headless'这样的包,为什么
java
命令与这些包相关?
安装新包的语法,有效的包名是
sudo apt install [packagename]
在本例中,您需要的命令是:
sudo apt install openjdk-7-jre-headless
shell知道这些包的原因是apt有一个缓存,其中包含基于您已配置的repos的所有已知包的列表。它知道哪个包提供了哪个程序名。因此,如果您尝试了其中一个包名,但没有安装正确的包,它会通知用户以方便。
您可以使用以下命令查找包名:
apt-cache search [search query]
,例如apt-cache search java
。这将在缓存中搜索包名和包描述,查找您提供的任何搜索词。
你好,如果你在终端输入java --version
,输出是什么?如果没有安装Java,可以使用以下命令使用openJDK11安装Java:
sudo apt-get update
sudo apt install default-jdk
将安装openJDK11 LTS