Как создать архив обновлений eclipse с сайта онлайн-обновлений?

Мне надоело устанавливать сотни плагинов (я использую много из них) из Интернета каждый раз, когда я меняю установку eclipse.

Что делает eclipse во время установки плагина, так это загружает соответствующие jar-файлы с сайта обновлений и устанавливает их.

Есть ли способ собрать эти файлы для загрузки в архив, чтобы в следующий раз можно было обновить локально без необходимости снова загружать все плагины?


person Monika Michael    schedule 15.06.2011    source источник


Ответы (2)


Вы можете отразить нужные функции и создать локальное репо. Вам нужны идентификаторы функций, которые вы регулярно устанавливаете (они находятся в вашем каталоге eclipse/features), а затем вы можете создать небольшой скрипт ant для создания своего локального репозитория. Оттуда вы можете просто установить локально. Идентификаторы репо совпадают с идентификатором функции + «.feature.group».

<target name="CreateLocalRepo">
   <p2.mirror destination="file:///opt/local/eclipseMirror" ignoreerrors="true">
      <source location="http://download.eclipse.org/releases/helios"/>
      <iu id="org.eclipse.emf.sdk.feature.group"/>
      <iu id="org.eclipse.releng.tools.feature.group"/>
   </p2.mirror>
<target>

Это может быть запущено чем-то вроде:

eclipse/eclipse -noSplash \
-application org.eclipse.ant.core.antRunner  \
-buildfile createLocalRepo.xml

Другой вариант, если у вас все еще есть старая установка eclipse, — это использовать «Справка»> «Установить новое программное обеспечение» и указать свое старое eclipse в качестве местоположения репозитория. OLD_ECLIPSE_INSTALL/p2/org.eclipse.equinox.p2.engine/profileRegistry/SDKProfile.profile

person Paul Webster    schedule 15.06.2011

Я хотел бы добавить к ответу Пола следующий сценарий Ant, в котором вам не нужно перечислять все идентификаторы функций, содержащихся на сайте:

<?xml version="1.0" ?>
<project name="MyProject" default="CreateLocalRepo" basedir=".">
  <target name="CreateLocalRepo">
    <p2.mirror destination="file://..." ignoreerrors="true">   
      <source>
        <repository location="http://.../" />
      </source>
    </p2.mirror>
  </target>
</project>
person JanDasWiesel    schedule 15.08.2012