如何使用Java确定操作系统?

时间:2017-08-29 23:01:10

标签: java operating-system

我想在java程序中找到操作系统,以便我可以加载正确的本机库。我知道使用System.getProperty("os.name")是一个选项,但我不想使用它,因为它可以由代码库中的任何人使用System.setProperty("os.name", "foo")设置。

2 个答案:

答案 0 :(得分:1)

确保从Java运行时加载正确的JNI库的唯一方法是尝试使用System.loadLibrary()加载其中任何一个并捕获异常,直到正确加载一个本机库。找到底层操作系统的其他方法只是启发式工具。

答案 1 :(得分:0)

只使用System.getProperty("os.name"),因为我不认为他们是另一种方式,并且不要担心setProperty,因为如果您考虑它,没有人会将其设置为{{ 1}}或foo或类似的东西。