我想知道是否有办法从JVM中确定我正在运行的Linux版本(即区分RHEL4,RHEL5)。我只是寻找一种区分操作系统和版本的一致方式。从java确定linux版本
6
A
回答
0
您还可以在lsb_release
lsb_release -a
看看会给你这样的:
[email protected]:~$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 8.10
Release: 8.10
Codename: intrepid
4
1
您正在运行哪个版本的发行版或哪个版本的内核?我知道红帽曾经将他们的版本号保存在一个名为/ etc/redhat-release的文件中。我不确定其他发行版。您可以通过“使用uname -r”
7
的JVM使您可以通过
System.getProperty()
"os.name" // OS name
"os.arch" // OS architecture
"os.version" // OS version
有关操作系统的一些基本信息,据我知道这并不报价做一个系统调用获得内核版本分发特定信息。 至少在Debian发行此信息存储在一个名为
的/ etc /问题
所以它可以帮助阅读的任何文件,其中不同的发行版存储这些信息的。
+0
终于有人真的读到了这个问题! – dm76 2010-03-09 14:59:41
1
/prov/version
是一个好的开始。 /etc/issue
可能也有帮助。
1
如果System.getProperty(x)其中x是“os.name”,“os.arch”,“os.version”不适用于您,那么您可能不得不求助于将本机进程作为建议(执行cat/proc /版本,或lsb_release等)
相关问题
- 1. 确定Redhat Linux版本
- 2. 在Linux上确定次要版本库
- 3. 确定从PHP版本
- 4. 从Powershell确定操作系统版本,Linux和Windows
- 5. React本机错误:“无法从'9.0.1'确定Java版本。”
- 6. 通过JMX确定Java版本
- 7. 使用java确定Microsoft Office的版本
- 8. 确定Mac上的Java SDK的版本
- 9. Android Studio - 无法确定Java版本
- 10. IntelliJ Gradle无法确定Java版本
- 11. 使用navigator.plugins确定Java版本
- 12. 版本的Java版本不正确?
- 13. 如何确定Java JDK版本和sdk版本?
- 14. 确定库版本?
- 15. 确定Android版本
- 16. Linux上的Tomcat(centos)。不正确的java版本
- 17. 如何确认RedHat Enterprise Linux版本?
- 18. 确定从Subversion导出的版本?
- 19. 如何从gradle确定调试版本?
- 20. 从Rails内部确定ruby版本
- 21. 仅从数据库确定MediaWiki版本
- 22. 从ADO.NET确定SQL Server的版本
- 23. 确定Linux发行版的宏
- 24. java版本仍然显示为1.4 linux
- 25. 无法更改java版本GNU/linux
- 26. 确定哪个版本的Mono在Linux上运行?
- 27. 在Red Hat Linux上您如何确定Sybase SQL Anywhere的版本?
- 28. Linux :: Linux版本upgade命令
- 29. 从java中检测linux发行版
- 30. 运行Linux脚本从Java
将使用此。非常感激。 – 2009-08-26 21:25:00
这个问题说“从JVM内部”,这个答案是给出一个命令在linux shell上运行 – dm76 2010-03-09 14:58:45
我用jdk的进程api来运行问题命令,读取约3个月的输入。我最终遇到了问题,因为java.lang.Process不能用于脚本,特别是进程缓冲区不够大,无法读取结果。 症状是,在某些虚拟机上,我得到一个空字符串结果,而有些我没有。 所以我更新了我的方法来启动/ bin/bash作为一个过程。然后,我将“/ usr/bin/lsb_release -a \ n”写入进程输出流并从输入流中读取。 工作更一致。 – 2010-06-18 00:42:10