/usr/lib/jvm/java-1.8.0-openjdk/release 没有这个文件或目录
在Java1.8以上,安装以后再安装目录是自动生成一个release文件,用于记录Java和系统信息。但是在centos中,如果你的Java是在安装系统时选择自动安装的,那么在标题那个目录下,也就是jdk1.8目录是没有release文件的。
在一些应用场景中,是会读取这个文件的信息的。比如终端启动Scala,如果没有这个文件,就会提示:”cat: /usr/lib/jvm/java-1.8.0-openjdk/release 没有这个文件或目录”
解决方法:
我们在终端中,进入这个目录
cd /usr/lib/jvm/java-1.8.0-openjdk
新建release文件,注意,该文件本身无后缀名
sudo vim release
这是就需要我们输入需要的系统信息:
我从自己Windows环境中的安装目录以及网上查找到的,我们需要自己填入以下信息:
JAVA_VERSION="" OS_NAME="" OS_VERSION="" OS_ARCH="" SOURCE="" BUILD_TYPE=""
其中引号内是我们需要填入的
以下是获得方法:
第一个Java版本,我们直接新打开一个终端,键入:
java -version
显示的第一行内容即是版本号
剩余项内容,有以下两个方法:
我们先打开eclipse,新建一个class带主函数的类:
方法一:
在主函数内键入:
Properties os=System.getProperties();
System.out.println(os);
这里可能会提示需要导包,导入即可。
编译运行后,在结果窗口把输出内容复制,然后在刚才新打开的终端新建一个txt文件保存该内容:
vim 系统信息.txt
按i进入插入模式,Ctrl+shift+v复制后,按esc键,输入:wq后保存退出。
然后在主目录找到该文件,打开后,按Ctrl+F依次搜索以上内容,把搜索结果填入老终端窗口引号里。保存退出即可
注意把“-”换成“.”进行搜索
方法二:
在主函数内键入:
String os1=System.getProperty("os.name"); System.out.println(os1); String os2=System.getProperty("os.version"); System.out.println(os2); String os3=System.getProperty("os.arch"); System.out.println(os3); String os4=System.getProperty("source"); System.out.println(os4); String os5=System.getProperty("build.type"); System.out.println(os5);
编译运行后,在结果窗口把输出内容依次复制到老终端窗口的引号内,保存退出即可。
这样我们就完成release文件的生成。