在麒麟操作系统visualvm安装插件失败,因为使用的内网,所以在官网下载了插件到本地;因为本地安装的jdk1.6,为了享受jdk1.8,在visualvm文件中增加了对于jdk1.8的引用:
export JAVA_HOME=/workspace/jdk1.8.0_40/bin
export PATH=$JAVA_HOME:$PATH
export CLASS_PATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
这个是本次问题所在,下面将会介绍。
每次一次安装插件都是貌似成功,重启后发现安装失败。百思不得其解。尝试到/var/log下面找日志也没有找到;
后来在我添加plugins地址的时候,发现默认路径是在root/.visualvm,我突然意识到这个路径下面有料!
首先.visualvm是隐藏文件夹,默认看不到,只能通过地址栏录入;
然后发现其下的1.3.9/var/log中是visualvm的日志;
最后点开后发现果然有异常,异常是发生在尝试访问jre/bin下面的unpack200的时候报的“没有权限”的异常,其实就是因为jre/bin下面的指令没有赋执行权限;
chmod +x *问题完美解决。
1.隐藏文件,在Linux下面,在文件前面添加一个"."之后就会变成隐藏文件,只能通过地址栏中敲入,或者在命令行敲入"ll -a"/"ls -a"才能够看到;
2.Java_Home应该配置的是jre的路径,而不是jdk路径,对于运行程序而言,除了需要jdk/bin下面的指令有执行权限之外,jre/bin也是需要赋执行权限,本来只要jre就可以的,但是为什么还要指定jdk,原因不知,但是如果只是指定jre还是不够的(难道还需要编译或者其他开发工具包吗);
3.尝试找到应用的日志,默认情况下应用将会在当前用户的下面,比如root用户就是在/root下面,其他用户将会在home/username下面。可以根据日志来查原因,比如keepalived,还有visualvm,都可以日志来定位到问题的所在,到哪里找日志,首先是到用户文件下找找(上面讲的),然后百度,因为有的应用日志是需要设置的,比如keepalived。