Я в настоящее время использую сборку PDE в бездисплейном режиме для разрабатывания моего проекта Пакета OSGI. PDE Antrunner задача использует установку Eclipse, и я просто указываю на него на свою локальную установку Eclipse.
к сожалению, моя установка затмения составляет больших приблизительно 260 МБ, но я предполагаю, что сборка PDE НЕ требует всех тех плагинов в стандартной установке затмения.
Кто-либо теперь, каков минимальный список плагинов, в которых я нуждаюсь для того, чтобы сделать бездисплейную сборку PDE? Все мои зависимости, которые я на самом деле имею в пользовательской папке целевой платформы, таким образом, я предполагаю единственную вещь, в которой я нуждаюсь от своей установки затмения, являются зависимостями, в которых на самом деле нуждается сборка PDE. Но что это? Я могу уменьшить свою установку на очень минимальном?
Моей целью является к также регистрации эта папка "затмения сборки" в SVN моего проекта так, чтобы при проверке его у Вас было все, что необходимо запустить полную сборку, не касаясь никакого build.properties. Но я не хочу фиксировать 266 МБ затмения, если мне, возможно, нужны только 20 МБ из него.
Спасибо Christoph
Я не могу напрямую ответить на ваш вопрос, но могу немного помахать руками, некоторые из которых могут помочь вам найти настоящий ответ.
В моем опыте PDE я обнаружил, что очень полезно различать:
Похоже, это четкие, отдельные концепции в вашей голове: вы уже изолировали" целевую платформу "и хочет изолировать ваш интерактивный Eclipse от вашего конструктора PDE.
Вы можете попробовать создать новое (пустое) рабочее пространство в интерактивном Eclipse (просто чтобы убедиться, что вы смотрите на него, а не на целевую платформу), открыв представление «Подключаемые модули», щелкнув правой кнопкой мыши многообещающий -просмотр плагина, такого как org.eclipse.pde.build
, и выбор «Open Dependencies». «Плоский макет» может быть более полезным способом просмотра результатов, чем иерархический, хотя в моем Eclipse я, похоже, не могу скопировать и вставить этот список.
В моем случае здесь ничего не упоминалось в JDT, что наводит меня на мысль, что на самом деле попытка создания подключаемого модуля на основе Java потерпит неудачу, но, надеюсь, это даст еще одно преимущество (например, «не могу найти org.eclipse.jdt
"или что-то в этом роде).
Похоже, что «должен» быть способ использовать механизм обновлений программного обеспечения, целевую платформу или Buckminster, чтобы просто назвать один плагин, а все остальные встали на свои места.Может быть, вы могли бы использовать целевую платформу, выбрать нужный плагин, нажать кнопку, чтобы выбрать требуемые, а затем как-то экспортировать «сборку», которая фактически просто собирала бы все эти плагины?
Признаюсь, мы просто проверили в интерактивном Eclipse некоторое время назад и использовали его в качестве нашего конструктора PDE. Мы не используем его в интерактивном режиме, и мы также поддерживаем отдельную целевую платформу. Наш конструктор PDE явно не минималистичен, но, возможно, так и останется, поэтому я надеюсь, что вы обновите это пространство своими открытиями.
Наконец-то мне пришлось сделать это сегодня самому (чтобы решить проблему, с которой я столкнулся, когда каталоги с пробелами в их именах не включались в созданный пакет PDE Build ). В конце концов я получил что-то, что могло бы собрать мою коллекцию (основанных на Java) плагинов. Я не знаю, является ли он «минимальным», но он ориентирован на сборку Java PDE и намного меньше, чем полная установка Eclipse IDE.
Я делал грубые заметки; здесь может быть несколько упущений или лишних шагов, но в основном это должно служить руководством.
I:
org.eclipse.pde.build
org.apache.ant
org.eclipse.jdt.core
Теперь я могу (продолжить) запустить сборку 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="-Dbuilder=@{config-dir}" />
<arg value="-Dbasedir=${basedir}" />
</java>
</sequential>
</macrodef>