问题:
安装cytoscape时,提示:
error信息:
No suitable Java Virtual Machine could be found on your system.
The version of the JVM must be at least 1.8.0_152 and at most 9.
Please define INSTALL4J_JAVA_HOME to point to a suitable JVM.
下面是解决方法。
成功的解决方法:
1.下载jre包。
网址:https://www.oracle.com/technetwork/java/javase/downloads/jre8-downloads-2133155.html。从cytoscape的页面即可进入。
下载linux x86的.tar.gz后缀的包。
2.设置变量:
export JAVA_HOME=/home/yuzh/jre1.8.0_231
export PATH=$JAVA_HOME/bin:$PATH
3.运行安装命令:
./Cytoscape_3_7_2_unix.sh
解决过程
错误经验:分析问题,比着急解决问题重要;问题还要从根源上解决,把每一步都搞懂。
1.始终不肯承认是自己的java版本低。给自己的理由:官网说java8,我的是java8,应该是可以的。=》导致我不尝试提高jre版本的方法。(内心根源:重装jre太费劲了。之前安装时有过安装费劲的经历)
2.安装时,提示:JVM需要1.8.0_152 。而我的JVM是1.8.0_51。我继续无视这个提示,把提示的第一和第三条放到网上搜索。尝试了网上提供的各种方法。
3.然后,我开始从头执行“./linux.sh”进行安装检测。仍然提示JAVA_HOME和PATH无法设置的问题。 =》我开始搜索如何设置这两个变量 =》那么,我得先知道JAVA的路径是什么,然后再去设置。=》由此,我学到了查找JAVA安装路径的方法。
== 在此之前,我一直以为是我的JAVA_HOME与HOME设置错误导致的问题。
4.此时,我开始想是不是我的JVM版本低的缘故。=》 我重新回到cytoscape页面,找到JAVA8的下载链接,下载jdk8.tar.gz版本。=》我发现,下载jdk的源码包(即.tar.gz文件)后,直接将JAVA_HOME的路径设置为该包解压缩后的路径即可。再按照查找到的设置PATH的方法:export PATH=$JAVA_HOME/bin:$PATH即可。
5.安装Cytoscape成功。
延伸技能
1.安装rpm包、.tar.gz包的区别:
以jre-8为例(下载地址:https://www.oracle.com/technetwork/java/javase/downloads/jre8-downloads-2133155.html)。
rpm包,需要用rpm命令进行安装。安装到/usr等目录下。
.tar.gz包,是源码包。不需要安装。解压缩文件夹内的bin下面有可以直接执行的命令文件,类似windows下面的可执行文件。
2.查找Java安装路径的方法
执行命令如下:
[yuzh@WS01 cytoscape]ls -lrt /usr/bin/java
lrwxrwxrwx. 1 root root 22 12月 6 2017 /usr/bin/java -> /etc/alternatives/java
[yuzh@WS01 cytoscape]$ ls -lrt /etc/alternatives/java
lrwxrwxrwx. 1 root root 72 12月 6 2017 /etc/alternatives/java -> /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.51-1.b16.el7_1.x86_64/jre/bin/java
[yuzh@WS01 cytoscape]$ export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.51-1.b16.el7_1.x86_64/jre
参考文献:https://blog.csdn.net/u013991521/article/details/78292136
3.linux各目录的含义
参照另一篇博文:https://www.cnblogs.com/zypiner/p/11910171.html
4.安装JDK,设置JAVA_HOME的方法
参考:https://docs.oracle.com/cd/E19182-01/821-0917/inst_jdk_javahome_t/index.html