如何判断我安装的Java版本?

我想开始玩java(最终到了我可以为Android或web编写基本的小程序),但我已经设法让java在我的计算机上搞砸了(从过去的实验中)。

我不确定我拥有哪个版本的java,并且想知道是否有命令可以查看已安装且处于活动状态的java版本。 另外,哪个版本效果最好? 这一切都在32位Ubuntu 12.04上

编辑:
好吧,好像我有openjdk 6和7,openjdk 7正在使用中。 我想使用openjdk 7,那么如何卸载openjdk 6? 只是通过USC足够好还是有一个应该运行的命令?

此命令应该告诉您当前提供Java虚拟机( java )和Java编译器( javac )的内容:

 file /etc/alternatives/java /etc/alternatives/javac 

这假设“替代”系统正常工作,可能不是这种情况,这取决于Java过去如何“搞砸”。 要检查这一点,请运行:

 file `which java javac` 

如果替代系统正常工作并被Java使用,那么您应该看到:

 /usr/bin/java: symbolic link to `/etc/alternatives/java' /usr/bin/javac: symbolic link to `/etc/alternatives/javac' 

否则,请编辑您的问题以提供详细信息。 那么应该可以给出一个更具体的答案。


您可以使用软件中心删除openjdk-6 。 有多个与之关联的软件包,因此您可能需要删除多个软件包。 ( 此处列出了所有`openjdk-6软件包。)

或者您可以使用命令行:

 sudo apt-get remove openjdk-6-\* icedtea-6-\* 

但是,无论您使用哪种方法,您可能需要首先检查以查看依赖于这些软件包的内容 – 您可能安装了特别需要版本6的软件。(可能不是,但可能。)

您可以通过在命令行上模拟删除操作来检查:

 apt-get -s remove openjdk-6-\* icedtea-6-\* 

这将向您展示删除这些包的效果,包括其他包也将被删除。 (你会注意到,因为这是一个模拟,你不需要sudo 。)

如果您希望能够在Web浏览器中继续在线使用Java内容 (这与JavaScript不同 ),那么在删除任何icedtea-6-openjdk-6-软件包之前( openjdk-6-jdk除外) ),你应该确保你安装的icedtea-7-软件包对应于安装的任何icedtea-6-软件包。

最简单的方法是:

update-java-alternatives -l显示已安装的所有Java版本。

java -version显示您正在使用的Java版本。

java -showversion显示了您正在使用的Java版本和帮助。

通常它是OpenJDK。

Java的

 java -version javac -version 

这些命令显示您安装的java版本(运行Java程序的解释器)和javac (创建它们的编译器)。

有关详细信息,请参见上图。

我这样做对我有用:

打开你的终端:

控制 + alt + T.

然后一次键入(或从此处复制并粘贴)这些命令:

 sudo rm /var/lib/dpkg/info/oracle-java7-installer* sudo apt-get purge oracle-java7-installer* sudo rm /etc/apt/sources.list.d/*java* sudo apt-get update sudo add-apt-repository ppa:webupd8team/java sudo apt-get update sudo apt-get install oracle-java7-installer 

然后为了安全起见,我会重启。

要查找您的Java版本类型

 java -version 

你应该看到与此类似的输出:

 java version "1.7.0_04" Java(TM) SE Runtime Environment (build 1.7.0_04-b20) Java HotSpot(TM) 64-Bit Server VM (build 23.0-b21, mixed mode) 

虽然你的是32位。

我强烈建议使用Java 7,但更新也会尝试安装Java 6。 那没问题。 但是你的默认设置应该仍然是7。只要你的video卡驱动程序工作,我所投入的一切都有效。

  • PPA是否可以安全地添加到我的系统中,需要注意哪些“危险信号”?