Автоматическое перенаправление для сайта обновления Eclipse со старого URL на новый URL - PullRequest
0 голосов
/ 27 июня 2019

У меня есть сайт обновления с несколькими пользователями, например www.foo.com/oldupdatesite. Я хочу выпустить новые версии сайта обновлений в новом месте. Например, новое местоположение может быть www.bar.com/newupdatesite. Было бы оптимальным, если бы я мог выдвигать новые выпуски только в новом месте, и существующие пользователи старого сайта обновлений все равно будут получать новые вещи без переконфигурации.

Хорошо известно, что для веб-браузеров можно перенаправить на другой адрес, используя HTML или JS, например, как объяснено здесь .

Интересно, существует ли подобный механизм для сайтов обновлений Eclipse. Можно ли создать фиктивный сайт обновлений таким образом, чтобы диалоговое окно «Установить новое программное обеспечение ...» в Eclipse вместо этого переходило на новый сайт обновлений?

1 Ответ

1 голос
/ 27 июня 2019

Вы можете использовать составной репозиторий с одним дочерним репозиторием, указывающим на новое местоположение.

Действия касательной точки p2 addRepository и removeRepository можно использовать для обновления Окна> Настройки: Установка / обновление> Доступные сайты программного обеспечения Настройки при установке / обновлении функции / продукта.

РЕДАКТИРОВАНИЕ

Попробовав функцию составного репозитория, о которой говорилось выше, я обнаружил, что размещения следующих файлов XML в старом расположении сайта обновлений достаточно для перенаправления на новый сайт обновлений.На самом деле, для меня это также работает с любым файлом.Тем не менее, я думаю, что создание обоих файлов не повредит.

compositeContent.xml

<?xml version='1.0' encoding='UTF-8'?>
<?compositeMetadataRepository version='1.0.0'?>
<repository name='"Open Editors Eclipse Plugin Update Site Redirect"'
    type='org.eclipse.equinox.internal.p2.metadata.repository.CompositeMetadataRepository'
    version='1.0.0'>
  <children size='1'>
    <child location='https://bar.com/newupdatesite'/>
  </children>
</repository>

compositeArtifacts.xml

<?xml version='1.0' encoding='UTF-8'?>
<?compositeArtifactRepository version='1.0.0'?>
<repository name='"Open Editors Eclipse Plugin Update Site Redirect"'
    type='org.eclipse.equinox.internal.p2.artifact.repository.CompositeArtifactRepository'
    version='1.0.0'>
  <children size='1'>
    <child location='https://bar.com/newupdatesite'/>
  </children>
</repository>
...