是否有可能在java中检测处理器架构?

sha*_*awn 8 java cpu-architecture

是否有可能在java中检测处理器架构?像x86或sun SPARC等?如果是这样,我该怎么做呢?

Clo*_*ble 6

您可以尝试使用System.getenv()获取环境变量,使用PROCESSOR_ARCHITECTUREKey获取CPU架构:

System.out.println(System.getenv("PROCESSOR_ARCHITECTURE"));
Run Code Online (Sandbox Code Playgroud)

或者在64位的情况下:

System.out.println(System.getenv("PROCESSOR_ARCHITEW6432"));
Run Code Online (Sandbox Code Playgroud)

另一种方法是使用"os.arch" 系统属性:

System.getProperty("os.arch");
Run Code Online (Sandbox Code Playgroud)

并且你可能需要在使用之前获得操作系统,System.getProperty("os.name")因为这是操作系统依赖的,正如QMuhammad在他的回答中提到的那样.

注意的是:

系统属性和环境变量都是名称和值之间的概念映射.这两种机制都可用于将用户定义的信息传递给Java进程.

相关链接:

  • 这仅适用于 MS Windows,并且仅适用于特定版本的 MS Windows。 (2认同)

Mik*_*rov 6

System.getProperty ("os.arch");
Run Code Online (Sandbox Code Playgroud)

在我的电脑上返回amd64.