找出我的 Java 应用程序在哪个 Java 位版本上运行(C# 和 Java 中需要的解决方案)[重复]
Posted
技术标签:
【中文标题】找出我的 Java 应用程序在哪个 Java 位版本上运行(C# 和 Java 中需要的解决方案)[重复]【英文标题】:Find out on which Java bit version my java application is running (Solution required in C# and Java) [duplicate] 【发布时间】:2015-11-14 22:16:48 【问题描述】:在我的 64 位 PC 上,我安装了 32 位和 64 位 JRE(Java 运行时环境)。我有一个java应用程序。根据我的要求,我需要找出我的应用程序正在使用哪个已安装的 java(32 位或 64 位)? 仅查找 java 版本(例如:1.7、1.8 等)是不够的。我需要找出我的应用程序正在使用哪个位版本的 JRE(32 位或 64 位)?
我想在 C# 应用程序中执行相同的实现。我的意思是我想从 C# 应用程序中知道同一台 PC 上的任何 Java 应用程序将使用哪个位版本(32 或 64)?
【问题讨论】:
位检测***.com/q/1856565/1737819 几乎总有一种方法可以避免需要知道这一点。为什么你需要这些信息,因为你可以在没有它的情况下运行? @Peter 这是我们项目的要求 【参考方案1】:使用来自org.apache.commons.lang
的SystemUtils
类:
String bit = System.getProperty("sun.arch.data.model"); //64
// commons-lang
String javaVersion = SystemUtils.JAVA_VERSION; //1.7.0_71
String jreVersion = SystemUtils.JAVA_RUNTIME_VERSION; //1.7.0_71-b14
【讨论】:
谢谢拉维,我想扩展我的问题。我想知道是否可以从 C# 应用程序实现相同的解决方案?我的意思是我想从 C# 应用程序中知道 java 应用程序将在同一台 PC 上使用哪个位版本的 Java。以上是关于找出我的 Java 应用程序在哪个 Java 位版本上运行(C# 和 Java 中需要的解决方案)[重复]的主要内容,如果未能解决你的问题,请参考以下文章