Я написал, как найти его в Eclipse Gallileo, но если у кого-то есть информация о более старых версиях, не стесняйтесь опубликовать ее ниже.
Поиск номера версии Eclipse
Ответы (10)
(обновление от сентября 2012 г.):
MRT указывает в комментариях вопрос "Eclipse Version" ссылается на .eclipseproduct
в основной папке и содержит:
name=Eclipse Platform
id=org.eclipse.platform
version=3.x.0
Так что это кажется более простым, чем мой первоначальный ответ ниже.
Кроме того, Ним Пракс упоминает ниже находится eclipse/configuration/config.ini
, который включает строку вроде:
eclipse.buildId=4.4.1.M20140925-0400
Опять же, легче найти, так как это свойства Java, установленные и найденные с помощью System.getProperty("eclipse.buildId")
.
Оригинальный ответ (апрель 2009 г.)
Для Eclipse Helios 3.6 версию платформы Eclipse можно определить непосредственно на экране «О программе»:
это комбинация глобальной версии Eclipse и идентификатора сборки:
Вот пример для Eclipse 3.6M6:
Версия будет следующей: 3.6.0.v201003121448, после версии 3.6.0 и идентификатора сборки I20100312-1448 (интеграционная сборка от 12 марта). , 2010, 14:48
Чтобы его было легче увидеть, нажмите «Сведения о плагине» и отсортируйте по версии.
Примечание: Eclipse3.6 имеет совершенно новый крутой логотип:
И вы можете видеть, что идентификатор сборки теперь отображается на этапе загрузки другого плагина.
В «Затмении Галилео»:
На странице «О программе» («Справка» -> «Об Eclipse») есть несколько значков в нижней части диалогового окна. Это должно включать два, которые являются простым значком Eclipse. Выберите тот, у которого есть всплывающая подсказка «Eclipse.org». Eclipse состоит из множества компонентов, каждый из которых имеет свой номер версии. Ядром является платформа Eclipse.
Думаю, проще всего прочитать файл readme внутри вашего каталога Eclipse по пути eclipse/readme/eclipse_readme
.
В самом верху этого файла четко указан номер версии:
Для моего затмения Юнона; там написано версия как Release 4.2.0
если вы хотите получить доступ к этому программно, вы можете сделать это, выяснив версию плагина eclipse\plugins\org.eclipse.platform_
String platformFile = <the above file>; //actually directory
versionPattern = Pattern.compile("\\d\\.\\d\\.\\d");
Matcher m = versionPattern.matcher(platformFile);
return m.group();
Вот рабочий фрагмент кода, который распечатает полную версию работающего в данный момент 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 Java EE IDE — Indigo: Help > About Eclipse > Eclipse.org (третий от последнего). В разделе «О платформе Eclipse» найдите платформу Eclipse, и вы увидите версию в столбце «Версия». Надеюсь, это поможет пользователям J2EE Indigo.
Есть системное свойство eclipse.buildId (например, для Eclipse Luna у меня там значение 4.4.1.M20140925-0400).
Я не уверен, в какой версии Eclipse стало доступно это свойство.
Кроме того, погрузитесь и изучите все доступные системные свойства — довольно много информации доступно в пространствах имен eclipse.*, os.* osgi.* и org.osgi.*.
ОБНОВЛЕНИЕ! После экспериментов с различными версиями Eclipse оказалось, что системное свойство eclipse.buildId
не подходит. Например, на Eclipse Luna 4.4.0 он дает результат 4.4.2.M20150204-1700
, что явно неверно.
Я подозреваю, что системное свойство eclipse.buildId
установлено на версию плагина org.eclipse.platform
. К сожалению, это не (всегда) дает правильный результат. Однако хорошая новость заключается в том, что у меня есть решение с образцом рабочего кода, который я изложу в отдельном ответе.
На основе Нима Пракса' ответ, приведенный ниже код должен дать вам версию eclipse ide, в которой вы работаете.
В моем случае я работал с продуктом, производным от eclipse, поэтому ответ Неэме просто дал мне версию этого продукта. ОП спросил, как найти версию Eclipse, что мне и нужно. Поэтому мне нужно было внести пару изменений, которые привели меня к этому:
/**
* Attempts to get the version of the eclipse ide we're running in.
* @return the version, or null if it couldn't be detected.
*/
static Version getEclipseVersion() {
String product = "org.eclipse.platform.ide";
IExtensionRegistry registry = Platform.getExtensionRegistry();
IExtensionPoint point = registry.getExtensionPoint("org.eclipse.core.runtime.products");
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) {
return bundle.getVersion();
}
}
}
}
}
return null;
}
Это вернет вам удобный Version
, который можно сравнить следующим образом:
private static final Version DESIRED_MINIMUM_VERSION = new Version("4.9"); //other constructors are available
boolean haveAtLeastMinimumDesiredVersion()
Version thisVersion = getEclipseVersion();
if (thisVersion == null) {
//we might have a problem
}
//returns a positive number if thisVersion is greater than the given parameter (desiredVersion)
return thisVersion.compareTo(DESIRED_MINIMUM_VERSION) >= 0;
}
Для Eclipse Kepler нет Help> About Eclipse, но я обнаружил, что это работает:
Затмение > О затмении
1 - Откройте Eclipse IDE. 2 - Нажмите: Alt + H 3 - Используйте стрелки на клавиатуре, чтобы перейти вниз по списку 4 - Выберите вкладку About Eclipse IDE.