findEclipse版本号
我已经发布了如何在Eclipse Gallileo中find它,但是如果任何人有关于旧版本的信息,请随时在下面发布。
(2012年9月更新):
MRT 在评论中指出,“ Eclipse版本 ”问题在主文件夹中引用了.eclipseproduct
,它包含:
name=Eclipse Platform id=org.eclipse.platform version=3.x.0
所以这似乎比我下面的原始答案更直接。
另外, Neeme Praks在下面提到有一个eclipse/configuration/config.ini
,其中包含一行:
eclipse.buildId=4.4.1.M20140925-0400
再次比较容易find,因为那些是通过System.getProperty("eclipse.buildId")
设置和find的Java属性。
原文答复(2009年4月)
对于Eclipse Helios 3.6,您可以直接从“关于”屏幕推导出Eclipse平台版本:
它是Eclipse全局版本和构buildId的组合:
这里是Eclipse 3.6M6的一个例子:
该版本将是: 3.6.0.v201003121448 ,版本3.6.0之后,编译ID I20100312-1448(集成版本自2010年3月12日14时48分
要更轻松地查看,请点击“插件详细信息”并按版本sorting。
注意:Eclipse3.6有一个全新的酷标志:
你可以在不同的插件的加载步骤中看到现在正在显示的构build标识。
在Eclipse Gallileo中:
关于页面(帮助 – >关于Eclipse)在对话底部有一些图标。 这应该包括两个是简单的Eclipse图标。 用工具提示“Eclipse.org”select一个。 Eclipse有很多组件,每个组件都有自己的版本号。 核心是Eclipse平台
我认为,最简单的方法是在eclipse/readme/eclipse_readme
path下读取Eclipse目录中的自述文件。
在这个文件的最顶端,它清楚地告诉版本号:
对于我的Eclipse Juno; 它说版本为Release 4.2.0
如果你想以编程方式访问,你可以通过计算eclipse \ plugins \ org.eclipse.platform_ plugin的版本
String platformFile = <the above file>; //actually directory versionPattern = Pattern.compile("\\d\\.\\d\\.\\d"); Matcher m = versionPattern.matcher(platformFile); return m.group();
对于Eclipse Java EE IDE – Indigo:Help>关于Eclipse> Eclipse.org(从上而下)。 在“关于Eclipse平台”中findEclipse平台,您将在版本列下面find版本。 希望这可以帮助J2EE Indigo用户。
有一个系统属性eclipse.buildId (例如,对于Eclipse月神,我有4.4.1.M20140925-0400作为值)。
我不确定在哪个版本的Eclipse中,此属性可用。
同时,深入探索所有可用的系统属性 – 在eclipse。*,os。* osgi。*和org.osgi。*命名空间下有相当多的信息。
UPDATE! 在尝试了不同的Eclipse版本之后,似乎eclipse.buildId
系统属性不是要走的路。 例如,在Eclipse Luna 4.4.0上,它给出了4.4.2.M20150204-1700
的结果,这显然是不正确的。
我怀疑eclipse.buildId
系统属性设置为org.eclipse.platform
插件的版本。 不幸的是,这不(总是)给出正确的结果。 然而,好消息是我有一个工作代码示例的解决scheme,我将在一个单独的答案中概述。
这是一个工作代码片段,将打印出当前正在运行的Eclipse(或任何基于RCP的应用程序)的完整版本。
String product = System.getProperty("eclipse.product"); IExtensionRegistry registry = Platform.getExtensionRegistry(); IExtensionPoint point = registry.getExtensionPoint("org.eclipse.core.runtime.products"); Logger log = LoggerFactory.getLogger(getClass()); if (point != null) { IExtension[] extensions = point.getExtensions(); for (IExtension ext : extensions) { if (product.equals(ext.getUniqueIdentifier())) { IContributor contributor = ext.getContributor(); if (contributor != null) { Bundle bundle = Platform.getBundle(contributor.getName()); if (bundle != null) { System.out.println("bundle version: " + bundle.getVersion()); } } } } }
它查找当前正在运行的“产品”扩展,并采取贡献插件的版本。
在Eclipse Luna 4.4.0上,它给出了4.4.0.20140612-0500
的结果,这是正确的。
对于Eclipse Kepler,没有帮助>关于Eclipse,但我发现这个工程:
Eclipse>关于Eclipse