Создание Eclipse "Распространение"? - PullRequest
11 голосов
/ 09 декабря 2008

В контексте создания пользовательского дистрибутива Eclipse для команды разработчиков.

Как бы я хотел создать собственный дистрибутив Eclipse, содержащий определенный набор плагинов? Трудно ли добавить какой-либо сайт обновлений для размещения определенных версий плагинов, с которых будет обновляться пользовательское затмение?

Ответы [ 5 ]

18 голосов
/ 19 января 2013

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

Подводя итог моим личным находкам:

  • В этом пространстве было много улучшений как в открытом, так и в коммерческом отношении
  • Сложность распределения часто больше, чем ожидалось
  • Стройте на спинах других, оно того стоит!

И пока я работаю в компании, предлагающей коммерческое решение (http://genuitec.com/sdc),), я постарался ответить ниже о практичности доставки Eclipse с использованием бесплатных решений.

Итак, без лишних слов ...

Абсолютно минимальным решением является загрузка пакета Eclipse с Eclipse.org, добавление необходимых плагинов, установка параметра -clean в eclipse.ini, архивирование каталога и передача его вашей команде. Пока вы добавляете функции со своего внутреннего сайта обновлений (и URL остается постоянным), Eclipse сможет обновляться с него.

Это сработает в первый раз, и, поскольку это легко, большинство людей начинают этим заниматься. Но он игнорирует жизненный цикл вашего стека инструментов. Вот некоторые болевые точки, с которыми я столкнулся, помогая клиентам с их инструментами Eclipse:

  • Пакеты Eclipse: Вы должны быть гуру Eclipse / p2 для настройки и обслуживания пакетов Eclipse. Инструменты EPP позволяют вам создавать свои собственные пакеты, но вам нужно много знаний о предметных областях, касающихся пакетов Eclipse, p2 и инструментов EPP. Место для начала http://wiki.eclipse.org/EPP/How_to_build_a_package_locally

  • Плагины: Поиск плагинов включает в себя много охоты на сайты обновлений, и тогда вы никогда не сможете быть уверены, что получили правильные двоичные файлы. Иногда сайты обновлений выходят из строя, или вы теряете поддержку своей версии Eclipse, когда разработчики плагинов выпускают новый сайт обновлений. Одно из предложений состоит в том, чтобы сделать локальные копии сайтов обновлений, чтобы снизить риск возникновения подобных проблем.

  • Обновления Eclipse: Если вы хотите, чтобы ваша команда переключала версии Eclipse, вам придется просто перестроить свой стек инструментов в следующей версии и переустановить всех. Это невозможно, просто отправив почтовый индекс.

  • Обновления плагинов: Eclipse предназначен для установки новых версий плагинов, но в больших производственных группах это может привести к обратным результатам. Локальные зеркала сайтов обновлений могут помочь в этом, если ваша команда не выходит и не добавляет свои собственные сайты обновлений.

  • Безопасность: вам нужно помешать вашей команде установить какое-либо программное обеспечение? Как насчет подписанных инструментов? Вам придется писать плагины, чтобы ограничить возможности вашего пакета, и вам, возможно, придется подписывать плагины самостоятельно. Сборка PDE имеет некоторую поддержку для подписи.

  • Долгосрочное обслуживание. Восстановление набора инструментов за несколько лет (а иногда и за несколько месяцев) может оказаться практически невозможным, поскольку поддержка различных версий Eclipse и различных версий подключаемых модулей происходит и происходит динамически в экосистеме Eclipse. Сохраняйте копии ваших пакетов Eclipse. Купить большие жесткие диски. Зеркально отразите используемые вами сайты обновлений.

  • Настройка рабочего пространства: вы можете развернуть Eclipse в своей команде, но это только первый шаг в этом процессе. Автоматизация для настройки рабочего пространства, например настройки, проекты, конфигурация Checkstyle или PMD значительно сокращают время, которое ваша команда тратит на подготовку к работе. Кроме того, эти параметры часто меняются при добавлении проектов, создающих постоянные проблемы управления. При прохождении почтового индекса я видел, как команды также передают соответствующую страницу WIKI или что-то подобное. Как правило, каждый разработчик должен убедиться, что он выполняет следующие действия.

  • Управление несколькими пакетами. Возможно, у вас есть один пакет для вашей команды разработчиков, а другой - для вашей команды обеспечения качества. А затем ваша команда разработчиков растет и разделяется на две группы с немного различными потребностями в инструментах, и теперь вашей команде QA также нужно несколько пакетов. А затем вы начинаете поставлять свой собственный плагин поверх Eclipse, так что это еще один пакет, которым вы управляете. После нескольких лет этого вы тратите все свое время на создание пакетов Eclipse и становитесь гуру Eclipse / P2 / Update Site, даже не пытаясь. Очевидно, что решение здесь состоит в том, чтобы нанять кого-то, кто сделает это для вас. :)

  • Распределение SMS: это работает достаточно хорошо с zip-файлом, но выкладывание обновлений становится грязным. Обычно люди используют SMS для выпадения первой установки, а затем задача разработчика - поддерживать ее в актуальном состоянии.

5 голосов
/ 09 декабря 2008

Eclipse не является одним из тех приложений, которые необходимо «установить», поскольку его можно просто скопировать в структуру каталогов и настроить ярлыки для его запуска (в виде дистрибутивов BIRT «все в одном»). *

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

И запуск собственного сайта обновлений не так уж и сложен, вам просто нужен сервер, на который вы устанавливаете только те версии плагинов, которые вам нужны, и перед отправкой файла zip убедитесь, что ваши точки распространения на этот сервер. Ничто не мешает вашим разработчикам подключаться к другому сайту.

3 голосов
/ 04 апреля 2013

Отвечая на первоначальный вопрос Локки, руководитель группы может создать собственный "дистрибутив" команды в виде файла .p2f, содержит идентификатор плагина, сайт обновления и точную версию для использования.

Используйте (Файл -> Экспорт -> Установить -> Элементы программного обеспечения в файл), чтобы подготовить файл списка плагинов (* .p2f),

Пример файла

<?xml version='1.0' encoding='UTF-8'?>
<?p2f version='1.0.0'?>
<p2f version='1.0.0'>
  <ius size='5'>
    <iu id='org.chromium.sdk.feature.group' name='ChromeDevTools SDK' version='0.3.9.201302091448'>
      <repositories size='1'>
        <repository location='http://www.tomotaro1065.com/nodeclipse/updates/'/>
      </repositories>
    </iu>
    <iu id='org.chromium.debug.feature.group' name='Chromium JavaScript Remote Debugger' version='0.3.9.201302091448'>
      <repositories size='1'>
        <repository location='http://www.tomotaro1065.com/nodeclipse/updates/'/>
      </repositories>
    </iu>
    <iu id='com.eclipsesource.jshint.feature.feature.group' name='JSHint Eclipse Integration' version='0.9.6.20130319-2128'>
      <repositories size='1'>
        <repository location='http://github.eclipsesource.com/jshint-eclipse/updates/'/>
      </repositories>
    </iu>
    <iu id='markdown.editor.feature.feature.group' name='Markdown Editor' version='0.2.3'>
      <repositories size='1'>
        <repository location='http://winterwell.com/software/updatesite/'/>
      </repositories>
    </iu>
    <iu id='org.nodeclipse.feature.group' name='Nodeclipse' version='0.2.0.201302091448'>
      <repositories size='1'>
        <repository location='http://www.tomotaro1065.com/nodeclipse/updates/'/>
      </repositories>
    </iu>
  </ius>
</p2f>

затем (Файл -> Импорт -> Установить элемент программного обеспечения из файла)

image Install Software Item from file">

Eclipse Node.js IDE собирается таким образом.

Этот вопрос связан с Eclipse IDE: установить набор плагинов

1 голос
/ 02 мая 2010

Я могу заинтересовать любого, кто пытается собрать собственный дистрибутив Eclipse для ознакомления с проектом упаковки Eclipse http://www.eclipse.org/epp/. Для настройки частного сайта обновлений Nexus Professional от Sonatype служит именно этой цели (коммерческая лицензия).

0 голосов
/ 09 декабря 2008

Просто заархивируйте каталог C: \ eclipse \ plugins и распространите.

Просто убедитесь, что разработчики запускают Eclipse с опцией «-clean», чтобы обеспечить внесение любых изменений.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...