Программно найти каталог установки eclipse - PullRequest
2 голосов
/ 05 июля 2011

В моем плагине eclipse (A) мне нужно программно получить путь к eclipse.exe, который запускает плагин (A).

Кто-нибудь знает API, чтобы получить этот путь?Я не ищу ресурс в плагине, но сам eclipse.exe.

Спасибо.

Ответы [ 2 ]

0 голосов
/ 30 декабря 2015

Это был комментарий в ответе выше Эндрю Нифера, намного проще:

String eclipseExecutablePath = System.getProperty("eclipse.launcher");
System.out.println(eclipseExecutablePath);
0 голосов
/ 05 июля 2011

Попробуйте код ниже:

import org.eclipse.osgi.service.datalocation.Location;

public <T> T getService(Class<T> clazz, String filter) {
        BundleContext context = getBundle().getBundleContext();
        ServiceTracker tracker = null;
        try{ 
            tracker = new ServiceTracker(context, context.createFilter("(&(" + Constants.OBJECTCLASS + "=" + clazz.getName()  //$NON-NLS-1$ //$NON-NLS-2$
                    + ")" + filter + ")"), null); //$NON-NLS-1$ //$NON-NLS-2$
            tracker.open();
            return (T) tracker.getService();
        } catch (InvalidSyntaxException e) {
            return null;
        } finally {
            if(tracker != null)
                tracker.close();
        }
    }

getService(Location.class, Location.INSTALL_FILTER)
...