Java全栈程序员之02:Ubuntu下Java环境安装、配置、测试

本文面向Linux初级选手,介绍将Ubuntu系统折腾为Java开发机的方法。先确定系统是否安装Java环境,到Oracle网站下载JDK,了解Linux目录后将JDK安装到指定目录。接着介绍了全局和当前用户配置文件的区别,在合适文件中配置Java环境变量。最后创建Java程序进行测试。

        在上文讲完之后,我们手里的ubuntu只能算是一个上网机,什么也干不了,本篇我们将折腾它为开发机。

这里,我们这里假定你对linux体系是初级选手,所以本篇会讲的啰嗦一点,高手就出门左转吧。

1.安装

        首先我们确定下我们安装的Ubuntu系统是否已经安装了java环境。

        进入终端,敲入命令su,进入root模式(当然也可以省掉这一步),敲入命令java -version。如果看到这个界面,说明尚未安装Java环境,

        Ps:我们的课程中曾经讲过如何删除一个老的jdk,这里就略过不讲了。

        继而,让我们到oracle的网站,去下载jdk,https://www.oracle.com/technetwork/java/javase/downloads/index.html

        为了避免别人说我太保守,这次我回到十年前的激进状态,下载最新版的jdk10。如果我们要配置的这台机器,是用来开发生产代码,我建议你回退至少一个主版本。

        我使用fireforx默认下载的,下载完毕后,我们可以在归档管理器中找到它。当然,对于新手来说,一定很好奇它在整个Ubuntu文件系统中的位置。

        我们打开文件管理器(对照为windows下的“我的电脑”),默认的是进入当前账户的主目录(这有点像大家习惯用的windows的user目录)。而这个当前账户,一般又不是root用户,所以我们看到的界面大概是下面这个样子的。

        但,firefox的默认下载路径是在root根目录的tmp目录下。那么疑问来了,你会发现在上面的界面中,我们不太容易找到root的tmp。

 

进入root目录

        那怎么找到它呢?

        一种方式是在上面的界面中,依次如下操作

 

        通过这种方式来进入到root根目录,我们只有浏览权限。

        另一种方式是在终端中敲入命令:sudo nautilus,然后输入密码,在弹出的文件系统中点击“文件系统根目录”。然后,我们终于到了根目录,同时发现了tmp文件夹。

        在tmp目录下,有一个叫做mozilla_yourname0的文件夹,点进去,就是我们刚才下载的jdk文件包了。

        接下来,我们要把jdk安装到哪?

        如果是windows,我们随便创建一个文件夹,或者是安装包的话,我们一路默认安装到program files下就行。但正常情况下,我们会规整一下自己的文件夹,那么,在Ubuntu下也一样,我们也需要大致了解下各个目录还是干什么的,以及按照约定俗成,我们应该在哪里放置我们即将要安装的jdk。

 

Linux目录介绍

        在解药linux目录,我们还是得从介绍root根目录讲起。为什么root目录对我们如此重要,我们乖乖的在当前用户的主目录待着不是很好嘛?

        好是好,但是我们是开发人员,我们需要折腾,就比如我装完windows系统,第一件事情是激活administrator,然后切换到该用户登录状态下一样。

        在root目录,有这样一些主要的目录:

        1:bin,系统的二进制可执行文件

        2:sbin,只有root才能访问的可执行文件

        3:etc,系统配置文件

        4:usr(不是user哦,是unix shared resources),很重要哦,可以理解为C:/Windows/,

        /usr/lib理解为C:/Windows/System32,

        /usr/local:用户级的程序目录,可以理解为C:/Progrem Files/。用户自己编译的软件默认会安装到这个目录下。

        /usr/src:系统级的源码目录。

        /usr/local/src:用户级的源码目录。

        当然,上面只是给出一般的建议,并不一定非要照此很教条的放置文件。

        5:dev(不是develop,是device),存放设备文件,驱动等

        6:root,root用户的用户主目录(区别于根目录)

        7:boot,系统启动时需要用到的文件

        8:mnt(mount),root安装临时文件的安装点

        9:lib,放置系统运行和第三方程序运行所依赖的lib库

        10:tmp,放置各种临时文件

        11:var,放置运行时需要改变数据的文件

        12:opt:opt有可选的意思,也是用户级的程序目录,可以理解为D:/Software。比如,我们在下一篇要安装的idea,我们就打算放在这个目录下。

        经过上面的了解,我们知道了安装软件最好放置到usr下,于是,我们 该目录下创建一个java1002文件夹。

        不过,如果我们是直接通过桌面系统进入到root根目录的,则会发现“新建文件夹”是灰显的。这个时候,我们就要通过sudo nautilus进入的桌面系统才能有权限去创建文件夹。

        创建完毕,把jdk包剪切到新目录下,然后提取它。

        如果使用命令来提取的话,是:

        tar –xvf jdk-10.0.2-linux-x64.tar.gz –C /usr/local/java1002

        在Ubuntu下,解压即安装。现在,我们需要配置java的几个环境变量。

 

2.配置

        习惯了使用windows的学员一定遇到过这种问题,就是我们安装软件的时候往往会问是否只允许当前用户使用。在Ubuntu下其实也有类似的问题。一般来说,Ubuntu的配置我们可以在两个地方配置,

        全局配置文件:

        /etc/profile

        /etc/bashrc

        当前用户配置文件:

        ~/.bash_profile 

        ~/.bashrc

        这4个地方到底有什么区别?

 

profile和bashrc文件的区别

        /etc/profile:主要用来设置系统环境变量,比如$PATH,对所有用户有效。

        /etc/bashrc:设置系统-bash shell相关的参数,对所有用户生效。用户运行bash命令,使用的参数就在这里。

        ~/.bash_profile:设置环境变量,功能同/etc/profile 类似,对当前用户有效。

        ~/.bashrc: 作用类似于/etc/bashrc, 对当前用户有效。

        注意,~指的是当前用户的主目录。如果当前用户是root,那么~就是/root/,否则就是/home/yourname/。

        还有一点需要注意,

        ~/.bash_profile 是只有用户登录时才会生效,而~/.bashrc 是non-login 方式运行的,即只要以该用户身份运行命令行就会读取该文件。

 

Java环境变量配置

        通过上面的描述,我们知道,java环境变量最好是在/etc/profile中配置。同样,我们要sudo nautilus下找到该文件,然后在末尾加上

        注意,这里是给有经验的同学说的。在jdk10中,已经没有了jre目录,所以在配置中,我们也不需要配置jre的相关信息。

        保存,关闭。

        Ps:也可以在终端通过命令:sudo vim /etc/profile打开文本编辑器,按<Insert>键进入编辑模式,填入内容,按<Esc>键退出编辑模式,接着按":"再输入”wq!“保存并退出。 

        在终端中敲入命令,

        source profile

        或者,我们也可以重启Ubuntu,让配置生效。

        此刻,再让我们敲入命令 java -version,当你看到这个界面的时候,就说明我们成功了

 

 

3.测试

        接下来,让我们回到当前用户的主目录,我们去创建一个javacode的目录,这个目录下,我们将要去放置第一个java程序了。

        首先,打开文本编辑器,然后输入代码:

        紧接着,到终端中,去到文件所在目录,

        javac HelloZuikc.java

        如果命令执行成功,则会发现多了一个HelloZuikc.class文件,继而执行:

        java HelloZuikc

        一切大功告成,如下:

 

 

华丽分割线(以下是广告时间)

===========================================================

1:最课程JavaEE+互联网分布式新技术开班进行中,你想学习不一样的Java开发技术,来http://www.zuikc.com看看吧;

2:最课程陆敏技在云栖社区与Java编码标准制定者阿里孤尽带来的Java专题:https://yq.aliyun.com/promotion/651

更多技术文章和开班信息请加入,

QQ群:

<think> 我们正在讨论如何查看Linux系统上是否安装了JDK。 根据用户需求,用户想查找查看是否安装JDK的方法。 虽然引用[1]提供了安装JDK和环境变量配置的方法,但用户的问题是关于检查JDK是否安装。 在Linux系统中,我们可以通过多种方式来检查JDK是否已经安装: 1. 使用`java -version`命令:如果已安装JDK,该命令会显示安装Java版本信息。 2. 使用`javac -version`命令:如果已安装JDK(包含编译器),该命令会显示Java编译器的版本。 3. 查找JDK的安装路径:通常JDK会安装在`/usr/lib/jvm`、`/usr/java`或`/opt`等目录下,我们可以使用`ls`命令查看这些目录。 4. 检查环境变量:查看`JAVA_HOME`环境变量是否设置,以及`PATH`中是否包含了Java的bin目录。可以使用`echo $JAVA_HOME`和`echo $PATH`来检查。 5. 使用`which java`和`which javac`命令:查看可执行文件的位置。 下面我们详细说明: ### 方法1:使用`java -version`和`javac -version` 打开终端,输入: ```bash java -version ``` 如果安装Java,会显示类似如下的信息: ``` openjdk version "1.8.0_292" OpenJDK Runtime Environment (build 1.8.0_292-b10) OpenJDK 64-Bit Server VM (build 25.292-b10, mixed mode) ``` 同样,输入: ```bash javac -version ``` 如果安装了JDK(而不仅仅是JRE),会显示编译器的版本,例如: ``` javac 1.8.0_292 ``` ### 方法2:查找Java安装路径 我们可以查看常见的安装目录: ```bash ls /usr/lib/jvm ls /usr/java ls /opt ``` 如果这些目录下有类似`jdk1.8.0_291`、`jdk-11.0.11`等命名的目录,则说明可能安装了JDK。 ### 方法3:检查环境变量 查看环境变量`JAVA_HOME`和`PATH`: ```bash echo $JAVA_HOME echo $PATH ``` 如果`JAVA_HOME`指向一个JDK的安装目录,并且`PATH`中包含了`$JAVA_HOME/bin`,那么说明环境变量已经配置### 方法4:使用`which`命令 查找`java`和`javac`命令的位置: ```bash which java which javac ``` 然后通过查看符号链接的指向(如果有的话)来找到实际的安装路径。例如,使用`ls -l /usr/bin/java`可以查看链接的原始位置。 注意:如果系统安装了多个版本的JDK,以上方法可能会显示当前激活的版本。如果想查看所有已安装的版本,可以尝试: ```bash update-alternatives --list java # 对于Debian/Ubuntu系统 ``` 或者 ```bash alternatives --list # 对于CentOS/RHEL系统 ``` 总结:最常用和直接的方法是使用`java -version`和`javac -version`命令。 根据用户提供的引用[1],其中提到了环境变量配置在`/etc/profile`文件中,所以如果用户配置环境变量,那么通过检查环境变量也可以辅助判断。 因此,我们可以推荐用户首先使用`java -version`命令来检查。 由于用户的需求是“查看是否安装JDK”,我们给出以上多种方法,用户可以根据实际情况选择。 注意:如果只安装了JRE(Java运行时环境),那么`javac`命令将不可用,所以检查`javac`可以确认是否安装了JDK(开发工具包)。 相关问题: 1. 如果`java -version`显示未安装,但实际可能安装了只是环境变量没配置,该怎么办? 2. 如何查看系统上安装的所有Java版本? 3. 如何切换多个已安装Java版本? </think> ### 查看Linux系统是否安装JDK的方法 在Linux系统中,可通过以下方法检查JDK安装状态: #### 1. **检查Java版本**(最常用) ```bash java -version ``` - 若已安装:显示版本信息(如 `OpenJDK 11.0.19`) - 若未安装:提示 `command not found` 或类似错误 #### 2. **检查Java编译器** ```bash javac -version ``` - 此命令专属于JDK(JRE不包含编译器),能明确区分是否安装完整JDK #### 3. **查找安装路径** ```bash # 查找Java可执行文件路径 which java # 或 whereis java readlink -f $(which java) # 追踪真实路径 # 检查常见安装目录 ls /usr/lib/jvm # 标准安装目录 ls /usr/local/java # 手动安装常见目录 ``` #### 4. **检查环境变量** ```bash echo $JAVA_HOME # 查看JDK主目录变量 echo $PATH # 检查PATH是否包含JDK的bin目录 grep -i "JAVA_HOME" /etc/profile # 检查配置 ``` #### 5. **验证包管理器安装** ```bash # Debian/Ubuntu dpkg -l | grep -i jdk # RHEL/CentOS rpm -qa | grep -i jdk ``` --- ### 结果诊断示例 | 场景 | `java -version` | `javac -version` | 说明 | |------|-----------------|------------------|------| | 仅装JRE | ✔️ 成功 | ❌ 失败 | 需安装完整JDK | | 未安装 | ❌ 失败 | ❌ 失败 | 需安装JDK | | 多版本 | 显示默认版本 | 显示默认版本 | 检查所有版本需用包管理命令 | > 💡 **提示**:若环境变量未配置(如 `JAVA_HOME` 未设置),即使已安装JDK,也可能导致命令失效。此时需要通过绝对路径验证,如: > ```bash > /usr/lib/jvm/jdk-11/bin/java -version > ``` --- ### 相关问题 1. 如果检测到多个JDK版本,如何切换默认版本? 2. 如何在Linux系统配置JDK环境变量? 3. JDK和JRE在功能上有哪些关键区别? 4. 使用包管理器安装JDK时有哪些常见问题需要注意? [^1]: 关于环境变量配置的参考方法
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值