【问题标题】:How Java determine operating system name?Java如何确定操作系统名称?
【发布时间】:2017-03-08 19:19:21
【问题描述】:

一开始我想提一下,这不是this topic的重复。

我知道我可以通过System.getProperty("os.name");以编程方式检查我从 Java 运行的操作系统

我的问题是:Java 如何确定我的操作系统?换句话说,当Properties 被加载/设置(特别是os.name)时,运行什么命令来执行此操作?

更新

也不与Where (which properties file) does System.getProperty(“key”) reads from? 重复。我不要求存储财产的地方。我要求用于确定操作系统名称的命令。

正如@Phylogenesis 评论的那样 - 在 Windows 上,它在本地 c 实现中使用 GetVersionEx。

Unix/Linux 呢?

【问题讨论】:

  • 很可能是特定于操作系统的命令,由特定于操作系统的 JAVA 实现发出?
  • @TT。大概。但是我可以在某处检查使用了什么命令吗?
  • 特别是,请参阅this question 中的答案,了解有关如何生成System.getProperty("os.name") 的更多详细信息。
  • @ArcticLord 我不这么认为,我要求某种特定于操作系统的方法,而不是实现细节
  • 这完全取决于运行 JAVA 的操作系统。每个操作系统都有不同的功能来获取这些信息。 Java 使用 JNI 调用特定于操作系统的函数。所以每个操作系统上的“命令”都是不同的。

标签: java


【解决方案1】:

只需查看OpenJDK source code

【讨论】:

  • 正是我所要求的!谢谢
猜你喜欢
  • 1970-01-01
  • 2012-06-04
  • 1970-01-01
  • 2013-03-12
  • 1970-01-01
  • 2014-08-07
  • 2011-01-27
  • 2017-06-15
  • 2018-10-26
相关资源
最近更新 更多