Saya telah memposting cara menemukannya di Eclipse Gallileo, tetapi jika ada yang memiliki informasi tentang versi yang lebih lama, silakan posting di bawah ini.
Saya telah memposting cara menemukannya di Eclipse Gallileo, tetapi jika ada yang memiliki informasi tentang versi yang lebih lama, silakan posting di bawah ini.
Jawaban:
(Pembaruan September 2012):
MRT menunjukkan dalam komentar bahwa pertanyaan " Eclipse Version " merujuk .eclipseproduct
pada a di folder utama, dan itu berisi:
name=Eclipse Platform
id=org.eclipse.platform
version=3.x.0
Jadi itu sepertinya lebih mudah daripada jawaban asli saya di bawah ini.
Selain itu, Neeme Praks menyebutkan di bawah bahwa ada eclipse/configuration/config.ini
yang menyertakan baris seperti:
eclipse.buildId=4.4.1.M20140925-0400
Sekali lagi lebih mudah ditemukan, karena itu adalah properti Java yang disetel dan ditemukan bersama System.getProperty("eclipse.buildId")
.
Jawaban asli (April 2009)
Untuk Eclipse Helios 3.6, Anda dapat menyimpulkan versi Platform Eclipse langsung dari layar Tentang:
Ini adalah kombinasi dari versi global Eclipse dan ID build:
Berikut adalah contoh untuk Eclipse 3.6M6:
Versinya adalah: 3.6.0.v201003121448 , setelah versi 3.6.0 dan ID build I20100312-1448 (build Integrasi dari 12 Maret 2010 pukul 14h48
Untuk melihatnya lebih mudah, klik "Detail Plugin" dan urutkan berdasarkan Versi.
Catatan: Eclipse3.6 memiliki logo keren baru:
Dan Anda dapat melihat ID build sekarang ditampilkan selama langkah pemuatan plugin yang berbeda.
Di Eclipse Gallileo:
Halaman tentang (Bantuan -> Tentang Eclipse) memiliki beberapa ikon di bagian bawah dialog. Ini harus mencakup dua yang merupakan ikon Gerhana biasa. Pilih salah satu dengan tooltip "Eclipse.org". Eclipse memiliki banyak komponen yang masing-masing memiliki nomor versinya sendiri. Intinya adalah Platform Eclipse
Menurut saya, cara termudah adalah membaca file readme di dalam direktori Eclipse Anda di path eclipse/readme/eclipse_readme
.
Di bagian paling atas file ini, ini dengan jelas memberi tahu nomor versi:
Untuk My Eclipse Juno; itu mengatakan versi sebagaiRelease 4.2.0
Jika Anda ingin mengaksesnya secara terprogram, Anda dapat melakukannya dengan mencari tahu versi 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();
Berikut adalah potongan kode yang berfungsi yang akan mencetak versi lengkap dari Eclipse yang sedang berjalan (atau aplikasi berbasis 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());
}
}
}
}
}
Itu mencari ekstensi "produk" yang sedang berjalan dan menggunakan versi plugin yang berkontribusi.
Pada Eclipse Luna 4.4.0, ini memberikan hasil 4.4.0.20140612-0500
yang benar.
Untuk Eclipse Java EE IDE - Indigo: Help> About Eclipse> Eclipse.org (ketiga dari terakhir). Di 'Tentang Platform Eclipse' temukan Platform Eclipse dan Anda akan memiliki versi di bawah Kolom Versi. Semoga ini bisa membantu Pengguna Indigo J2EE.
Ada eclipse.buildId properti sistem (misalnya, untuk Eclipse Luna, saya memiliki 4.4.1.M20140925-0400 sebagai nilai di sana).
Saya tidak yakin di versi Eclipse mana properti ini tersedia.
Juga, selami dan jelajahi semua properti sistem yang tersedia - ada cukup banyak informasi yang tersedia di bawah namespace eclipse. *, Os. * Osgi. * Dan org.osgi. *.
MEMPERBARUI!
Setelah bereksperimen dengan versi Eclipse yang berbeda, tampaknya eclipse.buildId
properti sistem bukanlah cara yang tepat. Misalnya, pada Eclipse Luna 4.4.0, ini memberikan hasil 4.4.2.M20150204-1700
yang jelas salah.
Saya menduga eclipse.buildId
properti sistem disetel ke versi org.eclipse.platform
plugin. Sayangnya, hal ini tidak (selalu) memberikan hasil yang benar. Namun, kabar baiknya adalah saya memiliki solusi dengan contoh kode kerja yang akan saya uraikan dalam jawaban terpisah.
eclipse-java-luna-SR1a-win32-x86_64
. Saya telah memasukkan jawaban Anda dalam jawaban saya di atas. +1
Berdasarkan Neeme Praks ' jawabannya , di bawah kode harus memberikan versi gerhana ide Anda berjalan dalam.
Dalam kasus saya, saya menjalankan produk turunan gerhana, jadi jawaban Neeme hanya memberi saya versi produk itu. OP bertanya bagaimana menemukan versi Eclipse , yang saya cari. Oleh karena itu, saya perlu melakukan beberapa perubahan, mengarahkan saya ke ini:
/**
* 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;
}
Ini akan memberi Anda kenyamanan Version
, yang dapat dibandingkan dengan ini:
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;
}
Untuk Eclipse Kepler, tidak ada Bantuan> Tentang Eclipse tetapi saya menemukan ini berfungsi:
Eclipse> Tentang Eclipse