Eclipse: Какова минимальная установка Eclipse, необходимая для сборки безглавых PDE?

В настоящее время я использую PDE-сборку в режиме безголового для создания моего проекта OSGI Bundle. Задача PDE Antrunner использует установку Eclipse, и я просто указываю ее на локальную установку Eclipse.

unfortunatelly моя установка eclipse составляет около 260 МБ, но я полагаю, что сборка PDE НЕ требует всех этих плагинов в стандартной установке eclipse.

Кто-нибудь теперь представляет собой минимальный список плагинов, которые мне нужны для создания безголовой сборки PDE? Все мои зависимости, которые у меня есть в пользовательской папке целевой платформы, поэтому я полагаю, что единственное, что мне нужно от моей установки eclipse, - это зависимости, которые действительно необходимы для сборки PDE. Но что это? Могу ли я уменьшить свою установку до минимума?

Моя цель - также проверить эту папку "build-eclipse" в моем SVN-проекте, чтобы при проверке у вас было все, что вам нужно, чтобы начать полную сборку, не касаясь каких-либо build.properties. Но я не хочу совершать 266 МБ затмения, если мне может понадобиться только 20 МБ.

Спасибо Кристоф

Ответы

Ответ 1

Мне, наконец, нужно было сделать это сегодня (для решения проблемы, с которой я столкнулся, когда каталоги с пробелами в их именах не включались в комплект сборки PDE Build). В итоге я получил кое-что, что могло бы создать мою коллекцию (Java-based) плагинов. Я не знаю, является ли это "минимальным", но это Java PDE Сфокусировано на построении и намного меньше, чем полная установка Eclipse IDE.

Я взял грубые заметки; здесь может быть несколько упущений или лишних шагов, но в основном это должно руководствоваться.

I:

  • Запустил последнюю среду Eclipse (в моем случае, экземпляр 3.5, который я использую в данный момент).
  • Используется рабочее пространство для царапин, поэтому изменения на целевой платформе не испортили бы мои "реальные" проекты.
  • Убедитесь, что целевая платформа настроена на место, в которое я хотел нарисовать плагины встроенного модуля PDE (в моем случае, только мой запуск Eclipse). (Окно | Предпочтения... | Разработка плагинов | Целевая платформа)
  • Создал новый пустой проект.
  • Создал новую конфигурацию продукта в этом проекте (используя "основные настройки" ).
  • На странице "Обзор" конфигурации нового продукта не установлен "Продукт включает в себя собственные артефакты запуска".
  • В разделе "Зависимости" указаны следующие плагины как составляющие продукт:
    • org.eclipse.pde.build
    • org.apache.ant
    • org.eclipse.jdt.core
  • Проверено "Включить дополнительные зависимости..."
  • Нажмите "Добавить необходимые плагины".
  • Определите определение продукта правой кнопкой мыши в обозревателе пакетов и выберите "Экспорт... | продукт Eclipse".
  • Сказал, где я хочу, чтобы мой экземпляр компоновщика PDE пошел.
  • Не отмечена "Синхронизация перед экспортом".
  • Unchecked "Создать репозиторий метаданных".
  • Нажмите "Готово".

Теперь я могу (продолжать) запускать сборку PDE из моей обычной сборки Ant, вызывая макрос вроде следующего (есть ли лучший способ?):

<macrodef name="build-a-product">
    <attribute name="config-dir"/>
    <sequential>
        <property name="product-build-file" value="${pde-builder-path}\plugins\org.eclipse.pde.build_3.5.2.R35x_20100114\scripts\productBuild\productBuild.xml" />
        <java jar="${pde-builder-path}\plugins\org.eclipse.equinox.launcher_1.0.201.R35x_v20090715.jar" fork="yes" failonerror="yes" >
            <arg value="-application" />
            <arg value="org.eclipse.ant.core.antRunner" />

            <arg value="-buildfile" />
            <arg value="${product-build-file}" />

            <arg value="[email protected]{config-dir}" />

            <arg value="-Dbasedir=${basedir}" />
        </java>
    </sequential>
</macrodef>

Ответ 2

Я не могу напрямую ответить на ваш вопрос, но могу немного помахать руками, некоторые из которых могут помочь вам найти реальный ответ.

В моем опыте PDE я нашел очень полезным отличить:

  • Eclipse IDE, который я использовал для интерактивного редактирования
  • Установка "Eclipse", которую я использовал для безголовых PDE-сборок
  • "Целевая платформа" (набор подключаемых модулей/функций/и т.д., из которых я строю, зависит)

Похоже, что это четкие, отдельные концепции в вашей голове: вы уже выделили "целевую платформу" и хотите изолировать свое интерактивное Eclipse от вашего конструктора PDE.

Вы можете попробовать создать новое (пустое) рабочее пространство в своем интерактивном Eclipse (просто чтобы убедиться, что вы смотрите на него, а не на целевую платформу), открыв представление "Plug-ins", щелкнув правой кнопкой мыши многообещающий - например, org.eclipse.pde.build, и выбрав "Open Dependencies". "Плоский макет" может быть более полезным способом просмотра результатов, чем иерархический, хотя в моем Eclipse я, похоже, не могу скопировать и вставить этот список.

В моем случае это не упоминало ничего в JDT, из-за чего я думаю, что на самом деле попытка создания подключаемого модуля на базе Java завершится неудачно, но, надеюсь, это обеспечит другое руководство (например, "не может найти org.eclipse.jdt" или что-то еще).

Кажется, что "должен" быть способом использовать механизм обновлений программного обеспечения, целевую платформу или Buckminster, чтобы просто назвать один подключаемый модуль и все остальные встать на свои места. Возможно, вы могли бы использовать целевую платформу, выбрать нужный подключаемый модуль, нажать кнопку, чтобы выбрать нужные, затем каким-то образом экспортировать "сборку", которая эффективно собирала бы все эти плагины?

Я признаюсь, что мы только что проверили в интерактивном Eclipse некоторое время назад и использовали его как наш разработчик PDE. Мы не используем его интерактивно, и мы также поддерживаем отдельную целевую платформу. Наш разработчик PDE явно не минимален, но может быть, возможно, и быть таким, поэтому я надеюсь, что вы обновите это пространство своими открытиями.