J'ai posté comment le trouver dans Eclipse Gallileo, mais si quelqu'un a des informations sur les anciennes versions, n'hésitez pas à le poster ci-dessous.
J'ai posté comment le trouver dans Eclipse Gallileo, mais si quelqu'un a des informations sur les anciennes versions, n'hésitez pas à le poster ci-dessous.
Réponses:
(Mise à jour de septembre 2012):
MRT fait remarquer dans les commentaires que la question " Version Eclipse " fait référence à un .eclipseproduct
dans le dossier principal et contient:
name=Eclipse Platform
id=org.eclipse.platform
version=3.x.0
Cela semble donc plus simple que ma réponse originale ci-dessous.
En outre, Neeme Praks mentionne ci - dessous qu'il existe un eclipse/configuration/config.ini
qui comprend une ligne comme:
eclipse.buildId=4.4.1.M20140925-0400
Encore une fois plus facile à trouver, car ce sont des propriétés Java définies et trouvées avec System.getProperty("eclipse.buildId")
.
Réponse originale (avril 2009)
Pour Eclipse Helios 3.6, vous pouvez déduire la version de la plate-forme Eclipse directement à partir de l'écran À propos:
Il s'agit d'une combinaison de la version globale d'Eclipse et de l'ID de build:
Voici un exemple pour Eclipse 3.6M6:
La version serait: 3.6.0.v201003121448 , après la version 3.6.0 et l'ID de build I20100312-1448 (une build d'intégration du 12 mars 2010 à 14h48
Pour le voir plus facilement, cliquez sur "Détails du plugin" et triez par Version.
Remarque: Eclipse3.6 a un tout nouveau logo sympa:
Et vous pouvez voir l'ID de build s'afficher maintenant lors de l'étape de chargement des différents plugins.
Dans Eclipse Gallileo:
La page à propos (Aide -> À propos d'Eclipse) a quelques icônes vers le bas de la boîte de dialogue. Cela devrait inclure deux qui sont l'icône Eclipse simple. Sélectionnez celui avec l'info-bulle "Eclipse.org". Eclipse a de nombreux composants, chacun ayant son propre numéro de version. Le cœur est la plate-forme Eclipse
Je pense que le moyen le plus simple est de lire le fichier readme dans votre répertoire Eclipse au chemin eclipse/readme/eclipse_readme
.
Tout en haut de ce fichier, il indique clairement le numéro de version:
Pour mon Eclipse Juno; il dit la version commeRelease 4.2.0
si vous souhaitez y accéder par programme, vous pouvez le faire en déterminant la version du plugin 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();
Voici un extrait de code fonctionnel qui imprimera la version complète d'Eclipse en cours d'exécution (ou de toute application basée sur 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());
}
}
}
}
}
Il recherche l'extension "produit" en cours d'exécution et prend la version du plugin contributif.
Sur Eclipse Luna 4.4.0, il donne le résultat de 4.4.0.20140612-0500
est correct.
Pour Eclipse Java EE IDE - Indigo: Aide> À propos d'Eclipse> Eclipse.org (troisième depuis le dernier). Dans la section «À propos de la plate-forme Eclipse», localisez la plate-forme Eclipse et vous aurez la version sous la colonne Version. J'espère que cela aidera les utilisateurs de J2EE Indigo.
Il existe une propriété système eclipse.buildId (par exemple, pour Eclipse Luna, j'ai 4.4.1.M20140925-0400 comme valeur).
Je ne sais pas dans quelle version d'Eclipse cette propriété est devenue disponible.
Aussi, plongez-vous et explorez toutes les propriétés système disponibles - il y a pas mal d'informations disponibles sous les espaces de noms eclipse. *, Os. * Osgi. * Et org.osgi. *.
METTRE À JOUR!
Après avoir expérimenté différentes versions d'Eclipse, il semble que la eclipse.buildId
propriété système ne soit pas la voie à suivre. Par exemple, sur Eclipse Luna 4.4.0, le résultat 4.4.2.M20150204-1700
est manifestement incorrect.
Je soupçonne que la eclipse.buildId
propriété système est définie sur la version du org.eclipse.platform
plugin. Malheureusement, cela ne donne pas (toujours) le résultat correct. Cependant, la bonne nouvelle est que j'ai une solution avec un exemple de code fonctionnel que je décrirai dans une réponse séparée.
eclipse-java-luna-SR1a-win32-x86_64
. J'ai inclus votre réponse dans la mienne ci-dessus. +1
Sur la base de la réponse de Neeme Praks , le code ci-dessous devrait vous donner la version d' eclipse ide que vous utilisez.
Dans mon cas, je courais dans un produit dérivé d'éclipse, donc la réponse de Neeme m'a juste donné la version de ce produit. L'OP m'a demandé comment trouver la version Eclipse , ce que je cherchais. Par conséquent, j'avais besoin de faire quelques changements, m'amenant à ceci:
/**
* 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;
}
Cela vous rendra une pratique Version
, qui peut être comparée ainsi:
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;
}
Pour Eclipse Kepler, il n'y a pas d'aide> À propos d'Eclipse mais j'ai trouvé que cela fonctionne:
Eclipse> À propos d'Eclipse