作者:SethKenlon译者:LCTTXingyu.Wang

|2019-11-2606:53收藏:2

在桌面上拥抱Java应用程序linux软件如何安装,之后在所有桌面上运行它们。

无论你运行的是哪种操作系统,一般都有几种安装应用程序的技巧。有时你可能会在应用程序商店中找到一个应用程序,或则使用Fedora上的DNF或Mac上的Brew这样的软件包管理器进行安装,而有时你可能会从网站上下载可执行文件或安装程序。由于Java是那么多流行的应用程序的前端,所以最好了解安装它的不同方式。好消息是你有好多选择,本文囊括了所有那些内容。

坏消息是Java太大,我说的不仅仅是文件大小。Java是一种开放源代码语言和规范,这意味着从理论上讲,任何人都可以创建它的实现版本。这意味着,在安装任何东西之前,必须确定要安装的Java发行版。

我须要JVM还是JRE或则JDK?

Java大致分为两个下载类别。Java虚拟机JavaVirtualMachine(JVM)是运行时组件;它是使Java应用程序才能在计算机上启动和运行的“引擎”。它包含在Java运行时环境JavaRuntimeEnvironment(JRE)中。

Java开发工具包JavaDevelopmentKit(JDK)是一个开发工具包:你可以将其视为一个车库,维修工可以坐在那儿进行调整、修理和改进。JDK包含Java运行时环境(JRE)。

以下载来说,这意味着:

当太阳微系统SunMicrosystems被Oracle竞购时,Java是该交易的主要部份。辛运的是,Java是一种开源技术,因而,假如你对Oracle维护该项目的形式不满意,则可以选择其他方式。Oracle将专有组件与Java下载捆绑在一起,而OpenJDK项目是完全开源的。

IcedTea项目本质上是OpenJDK,但其目标是使用户在使用完全自由开源的工具时更容易建立和布署OpenJDK。

(LCTT评注:阿里巴巴也有一个它自己维护的OpenJDK发行版“龙井Dragonwell”。以下引自其官网:“AlibabaDragonwell是一款免费的,生产就绪型OpenJDK发行版,提供常年支持,包括性能提高和安全修补。……AlibabaDragonwell作为Java应用的基石,支撑了阿里经济体内所有的Java业务。AlibabaDragonwell完全兼容JavaSE标准,……”)

我应当安装那个Java?

假如你对那些选择倍感不知所措,这么简单的答案就是你应当安装的Java实现应当是最容易安装的那种。当应用程序告诉你须要Java12,但你的储存库中只有Java8时,可以安装可以从可靠来源中找到的Java12的任何实现。在Linux上,你可以一次安装几个不同版本的Java,它们不会相互干扰。

假如你是须要选择使用那个版本的开发人员,则应考虑所需的组件。假如选择Oracle的版本,请注意,软件包中包含专有的插件和字体,可能会影响你分发你的应用程序。在IcedTea或OpenJDK上进行开发是最安全的。

从储存库安装OpenJDK?

如今,你已然晓得要选择哪些了,你可以使用软件包管理器搜索OpenJDK或IcedTea,之后安装所需的版本。有些发行版使用关键字latest来指示最新版本,这一般是你要运行的应用程序所须要的。按照你使用的软件包管理器,你甚至可以考虑使用grep过滤搜索结果以仅包括最新版本。比如,在Fedora上:

$ sudo dnf search openjdk | grep latest | cut -f1 -d':'
java-latest-openjdk-demo.x86_64
java-openjdk.i686
java-openjdk.x86_64
java-latest-openjdk-jmods.x86_64
java-latest-openjdk-src.x86_64
java-latest-openjdk.x86_64
[...]

只有当你尝试运行的应用程序坚持要求你使用Java的旧版本时,你才应当瞧瞧latest之前的版本。

在Fedora或类似系统上安装Java:

$ sudo dnf install java-latest-openjdk

假如你的发行版不使用latest标签,则可以使用其他关键字,比如default。以下是在Debian上搜索OpenJDK的信息:

$ sudo apt search openjdk | less
default-jdk
  Standard Java development kit
default-jre
  Standard Java runtime
openjdk-11-jdk
  OpenJDK development kit (JDK)
[...]

在这些情况下,default-jre软件包适宜用户,而default-jdk则适宜开发人员。

比如,要在Debian上安装JRE:

$ sudo apt install default-jre

如今已安装好Java。

你的储存库中可能有许多与Java相关的软件包。要搜索OpenJDK,假如你是用户,则查找最新的JRE或JVM,假如你是开发人员,则查找最新的JDK。

从互联网上安装Java

假如在储存库中找不到JRE或JDKlinux视频,或则找不到满足你需求的JRE或JDK,则可以从互联网上下载开源的Java软件包。你可以在中找到须要自动安装的tar方式的OpenJDK下载文件,或则可以从Azul下载tar方式的Zulu社区版或其可安装的RPM或DEB软件包。

从TAR文件安装Java

假如从或Azul下载TAR文件,则必须自动安装。这一般称为“本地”安装,由于你没有将Java安装到“全局”位置。你可以在PATH中选择一个合适的位置。

假如你不晓得PATH中包含哪些,请查看一下以找出:

$ echo $PATH
/usr/local/bin:/usr/local/sbin:/usr/bin:/usr/sbin:/home/seth/bin

在此示例PATH中,位置/usr/local/bin和/home/seth/bin是不错的选择。假如你是计算机上的惟一用户,这么你自己的家目录就很有意义。假如你的计算机上有好多用户,则最好选择一个通用位置,比如/usr/local或/opt。

假如你无权访问须要sudo权限的/usr/local之类的系统级目录,则可以在你自己的家目录中创建一个本地bin(意思是“二补码binary”,而不是“垃圾箱wastebin”)或Applications文件夹:

$ mkdir ~/bin

假如它不在你的PATH中,请将其添加到其中:

$ echo PATH=$PATH:$HOME/bin >> ~/.bashrc
$ source ~/.bashrc

最后,将压缩包解压缩到你选择的目录中。

$ tar --extract --file openjdk*linux-x64_bin.tar.gz --directory=$HOME/bin

Java如今安装好了。

从RPM或DEB安装Java

倘若从下载RPM或DEB文件,则可以使用软件包管理器进行安装。

对于Fedora、CentOS、RHEL等,请下载RPM并使用DNF进行安装:

$ sudo dnf install zulu*linux.x86_64.rpm

对于Debian、Ubuntu、Pop_OS和类似发行版,请下载DEB软件包并使用Apt安装它:

$ sudo dpkg -i zulu*linux_amd64.deb

Java如今安装好了。

用alternatives安装你的Java版本

一些应用程序是为特定版本的Java开发的,不能与其他任何版本一起使用。此类情况极少见linux 输入法,但确实会发生,在Linux上,你可以使用本地安装方式(请参阅前面“从TAR文件安装Java”一节)或使用alternatives应用程序来解决此冲突。

alternatives命令会查找Linux系统上安装的应用程序linux软件如何安装,并让你选择要使用的版本。有些发行版,比如Slackware,不提供alternatives命令,因而你必须使用本地安装方式。在Fedora、CentOS和类似的发行版上,该命令是alternatives。在Debian、Ubuntu和类似的系统上,该命令是update-alternatives。

要获取当前已安装在Fedora系统上的应用程序的可用版本列表:

$ alternatives --list

在Debian上,你必须指定可供取代的应用程序:

$ update-alternatives --list java

在Fedora上选择要使系统将那个版本作为默认版本:

$ sudo alternatives --config java

在Debian上:

$ sudo updates-alternatives --config java

你可以按照须要运行的应用程序,按照须要修改默认的Java版本。

运行Java应用

Java应用程序一般以JAR文件的方式分发。按照你安装Java的方法,你的系统可能早已为运行Java应用程序配置好了,这使你只需双击应用程序图标(或从应用程序菜单中选择它)即可运行。假如必须执行未与系统其余部份集成的本地Java安装,则可以直接从终端启动Java应用程序:

$ java -jar ~/bin/example.jar &

Java是个好东西

Java是少数将跨平台开发置于首位的编程环境之一。没有哪些比问一个应用程序是否能在你的平台上运行之后发觉该应用程序是用Java编撰要让人倍感松一口气的了。它是这么简单,无论你是开发人员还是用户,你都可以甩掉任何平台上的恐惧。在桌面上拥抱Java应用程序,之后在所有桌面上运行它们吧。

via:

作者:SethKenlon选题:lujun9972译者:wxy校对:wxy

本文由LCTT原创编译,Linux中国荣誉推出

本文原创地址:https://www.linuxprobe.com/wxyjhsjhzjjd.html编辑:刘遄,审核员:暂无