Recherche du numéro de version d'Eclipse

115

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.

Casebash
la source
3
J'espère que cela apparaîtra dans Google si je l'oublie à nouveau.
Casebash
66
Il me semble un peu ridicule qu'ils rendent si difficile de répondre à la simple question de "quelle version d'Eclipse ai-je?".
Lyle
3
Et cela apparaît maintenant dans Google = P
Casebash
2
Oui, c'est le manque d'efforts pour rendre les choses faciles pour l'utilisateur qui laisse tomber tant de services / applications @Lyle. Einstein (non pas qu'il était quoi que ce soit ou que ses paroles étaient vraies dans ce cas) a essentiellement dit que les choses devraient être rendues aussi simples que possible, mais aujourd'hui, il semble que beaucoup n'aient aucune considération pour une telle maxime
George Tomlinson
Cliquez ici pour vérifier ce lien. Vous obtiendrez une meilleure réponse
Sabapathy

Réponses:

104

(Mise à jour de septembre 2012):

MRT fait remarquer dans les commentaires que la question " Version Eclipse " fait référence à un .eclipseproductdans 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.iniqui 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:

texte alternatif

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:

texte alternatif

Et vous pouvez voir l'ID de build s'afficher maintenant lors de l'étape de chargement des différents plugins.

VonC
la source
3
stackoverflow.com/questions/2313660/eclipse-version Vous pouvez également essayer. C'est vraiment très simple à utiliser!
MRT
@MRT bon point. Je l'ai inclus dans la réponse pour plus de visibilité.
VonC le
1
Quand je viens d'essayer ceci, le .eclipseproduct contenait 3.6.1 mais le readme / readme_eclipse.html contenait 3.6.2. Il s'avère que la version 3.6.2 est la bonne version, alors méfiez-vous.
Dave Griffiths
Il peut également être utile de savoir si vous exécutez la version 32 ou 64 bits, vérifiez cette réponse pour savoir comment déterminer que: stackoverflow.com/a/9578565/191761
Adam Burley
18

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

Casebash
la source
15

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

rai.skumar
la source
2

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();
soudhan
la source
2

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.

Neeme Praks
la source
1

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.

Mario Galea
la source
1

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.buildIdpropriété système ne soit pas la voie à suivre. Par exemple, sur Eclipse Luna 4.4.0, le résultat 4.4.2.M20150204-1700est manifestement incorrect.

Je soupçonne que la eclipse.buildIdpropriété système est définie sur la version du org.eclipse.platformplugin. 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.

Neeme Praks
la source
En effet. Je viens de le tester avec eclipse-java-luna-SR1a-win32-x86_64. J'ai inclus votre réponse dans la mienne ci-dessus. +1
VonC
Vous mentionnez "eclipse / configuration / config.ini" mais ne mentionnez pas qu'il est facilement accessible depuis le code Java avec System.getProperty ("eclipse.buildId"). Je ne sais pas quel était le contexte de la question d'origine, voulait-il la trouver dans le système de fichiers ou au moment de l'exécution (dans un plugin)?
Neeme Praks
Je soupçonne que c'était un peu des deux, principalement là où ces informations ont été enregistrées.
VonC
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;
    }
M_M
la source
Cela semble plus précis que mon ancienne réponse de 2010. Vote positif
VonC
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

Michael Osofsky
la source
Qu'entendez-vous par "Eclipse". Je ne vois pas cette option dans la ligne "Fichier Modifier Naviguer ...".
Wes du
Je suis sur un Mac, il y a donc une option de menu appelée Eclipse qui se trouve à gauche de l'option de menu appelée Fichier.
Michael Osofsky