如何在UbuntuLinux中正确地设置JAVAHOME变量
如果你 在 Ubuntu 上运行 Java 程序,使用 Eclipse、Maven或 Netbeans 等等,你将需要将JAVA_HOME环境变量设置为正确的路径。否则,你的系统将会向你控诉 "java_home 环境变量没有设置"。
在这篇初学者教程中,我将向你展示在 Ubuntu 上正确地设置 JAVA_HOME变量的步骤。这些步骤应该也适用于大多数的其它的 Linux 发行版。
设置过程包含这些步骤: 确保已安装 Java 开发工具包(JDK)。查找 JDK 可执行文件的正确的位置。设置 JAVA_HOME环境变量,并永久更改它。
步骤 1: 核查 JDK 是否已经安装
核查 Java 开发工具包(JDK)是否已经安装在你的 Linux 系统上的最简单的方法是运行这个命令:javac --version
上面的命令将核查 Java 编译器的版本。如果已经安装了 Java 编译器,它将显示 Java 版本:
如果上面的命令显示像这样未找到 javac命令的错误信息,你得先安装 JDK :
如果在你的系统上并没有安装 Java 编译器,使用这条命令来安装 Java 开发工具包 (JDK):sudo apt install default-jdk
这将在你当前的 Ubuntu 版本中安装默认的 Java 版本。如果你需要一些其它版本的 Java 版本,那么你必须 在 Ubuntu 中安装 Java 时具体指出它的版本。
在你确保 Java 编译器存在于你的系统之中后,接下来就到了查找其位置的时候了。
步骤 2: 获取 JDK 可执行文件(Java 编译器)的位置
可执行文件通常位于 /usr/lib/jvm目录之中。但我不会让你来玩一个猜谜游戏,让我们来找出 Java 可执行文件的路径。
使用 which 命令来获取 Java 编译器可执行文件的位置:which javac
在这里的问题是,它给出的位置实际上是一个 符号链接。你将需要按照下图执行几次:
最简单的方法是直接使用下面这条命令跟随符号链接来以获取实际的可执行文件:readlink -f `which java`
readlink命令会跟随一个符号链接。我在which java的外侧使用readlink将会使用which java的输出来替换要检查的符号链接,这被称之为命令替换。因此,在这个实例中,上面的命令大体上相当于readlink -f /usr/bin/java。
在我的示例中,可执行文件的位置是 /usr/lib/jvm/java-11-openjdk-amd64/bin/java。对你来说可能会不一样。在你的系统中,复制上述命令所获取的正确的路径。你知道,你可以在 Ubuntu 的终端中复制和粘贴。
步骤 3: 设置 JAVA_HOME 变量
现在,你已经获取了位置,使用它来设置 JAVA_HOME环境变量:export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64/bin/java
核查 JAVA_HOME目录的值:echo $JAVA_HOME
尝试在同一个终端中运行你的 Java 程序或工程,并查看它是否工作。
这尚未结束。你刚刚声明的 JAVA_HOME环境变量是临时的。如果你关闭这个终端或开始一个新的会话,它将会再次变成空的。
为了"永久地"设置 JAVA_HOME变量,你应该将其添加到你的家目录中的.bashrc文件中。
你可以 在 Linux 终端中使用 Nano 编辑器来编辑文件。 如果你不想使用它,并想采取一种简单的复制和粘贴的方法,使用下面的命令:
首先备份你的 .bashrc文件(以防万一你把它弄坏了,你还可以将其再恢复回来):cp ~/.bashrc ~/.bashrc.bak
接下来,使用 echo 命令来追加在这一节开头使用的export命令。你应该适当地更改下面的命令,以便其正确地使用你的系统所显示的路径。echo "export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64/bin/java" >> ~/.bashrc
验证它已经被正确地添加到文件的结尾处:tail -3 ~/.bashrc
上面的 tail 命令将显示所具体指定文件的最后 3 行。
这里是上面的三个命令的全部的输出:
现在,即使你退出会话或重新启动系统,JAVA_HOME环境变量都仍将设置为你所具体指定的值。这就是你所想要的,对吧?
注意,如果你将来更改默认的 Java 版本,你将需要更改 JAVA_HOME环境变量的值并将其指向正确的可执行文件的路径。
我希望这篇教程不仅会帮助你设置 JAVA_HOME环境变量,也会教会你如何完成这项工作。
如果你仍然面临难题或者有一些疑问或建议,请在评论区告诉我。
via: https://itsfoss.com/set-java-home-ubuntu/
作者:Abhishek Prakash选题:lujun9972译者:robsean校对:wxy
本文由 LCTT原创编译,Linux中国荣誉推出
超音速,音爆和音爆云的物理学原理声音可以在固体气体液体中传播,且在空气中传播速度最慢,较快的是液体,传播速度最快的是固体。本文的超音速特指声音在空气中传播的情况。音速就是指声音的传播速度,标准速度是在15的海平面
陈旭不同个体对公平诉求有别应根据人的性格调整推荐算法模型中新经纬3月24日电(薛宇飞)近日,由中国人民大学高瓴人工智能学院智能社会治理跨学科交叉平台和基于大数据文科综合训练国家级虚拟仿真实验教学中心联合主办的算法公平性与内容生态建设研讨
陈佳伟公平性评估指标难以定义和计算,应在动态场景中探索长期公平中新经纬3月24日电(王玉玲)近日,由中国人民大学高瓴人工智能学院智能社会治理跨学科交叉平台和基于大数据文科综合训练国家级虚拟仿真实验教学中心联合主办的算法公平性与内容生态建设研讨
小鹏汽车涨超12,新能源汽车板块拉生升盛资讯3月18日消息,美股盘中,新能源车概念股普涨,截至发稿,小鹏汽车(XPEV)涨超12,理想汽车(LI)涨超11,蔚来汽车(NIO)涨超7,Rivian(RIVN)图森未来(
华为新机曝光2022华为全屋智能及全场景新品春季发布会正式举办,超过十款全新产品正式于发布活动中亮相。这次活动中,华为推出了nova9SEP50EP50Pro新配色等手机新品。而除此之外,华为
2019年,马云承诺每年在沙漠种植1亿棵树,如今成啥样了?马云创造的商业帝国,支付宝无疑是其最骄傲的艺术品。由用户参与,支付宝出资在沙漠之中打造绿洲的活动,更引起了人们的无限赞叹。2019年,马云承诺要每年种植1亿棵。如今3年时间过去了,
AIoT热点人均52万港币!近五千员工获小米史上最大规模员工激励2022年3月25日星期五AIoT热点1。人均52万港币!近五千员工获小米史上最大规模员工激励3月24日,小米集团(1810。HK,小米集团W)发布公告称,向4931位员工授予约1
突然!vivo首款平板正式公布颜值如何?今天早上vivo官方账号带了了首款折叠屏新品vivoXFold的预热之后,下午vivo官方账号之一的vivo智能终端也公布了vivo首款平板电脑产品vivoPad的预热内容。viv
零跑T03自主研发的硬核小车零跑T03之所以会成为同级中唯一具备L2智能驾驶辅助的车型,其根本原因便是企业自主科技实力的差异。零跑汽车有着大华股份这样一家实力科技企业作为后盾,并自身已对智能驾驶系统的核心技术
12306暂停发售4月8日及以后车票据飞猪旅行消息,铁路部门计划于4月上旬对旅客列车运行图进行优化调整,以更好地满足广大旅客出行需求。为切实做好相关准备工作,将暂停发售4月8日及以后始发的多次旅客列车车票,预计恢复发
16G1TB几次开售被抢光,5000mAh配80W快充,努比亚翻身了从去年国产手机销量情况来看,用得上惨淡来形容的有中兴魅族努比亚,这三个国产手机品牌虽然也是比较大牌的代表,但与小米OV荣耀华为这些相比,确实是有点让人心酸。特别是努比亚,去年本品牌