Maven project: SWT 3.5 зависимость: любое официальное публичное репо?
Ну, короче, мне может понадобиться захватить новую версию SWT вместо 3.3, которую мы сейчас используем. Проект теперь имеет только эту зависимость и строит отлично:
<dependency>
<groupId>org.eclipse.swt.win32.win32</groupId>
<artifactId>x86</artifactId>
<version>3.3.0-v3346</version>
</dependency>
AFAICGoogle, в публичной репозитории maven нет более новой версии:
http://repo1.maven.org/maven2/org/eclipse/swt/
Итак:
- Есть ли какое-либо публичное репозиционирование maven с
последние сборки?
- Если нет, то где вы
получить банки, которые вы устанавливаете локально
и/или в вашем корпоративном Nexus?
- Любая группаId/artifactId
предложения/соглашения, о которых вы знаете?
ТИА
PS: В основном я предпочитаю макет сайта Eclipse и обычно теряюсь в результатах поиска Google и/или на сайте Eclipse... поэтому, хотя ответ может быть очевиден для вас, скорее всего, это не так для меня, даже ретроспективно.
Ответы
Ответ 1
Обновить. Репо было снято и заменено на repo.eclipse.org, которое не содержит SWT артефакты.
Вы можете использовать репозиторий Nexus, размещенный в eclipse (этот репозиторий находится в состоянии тестирования)
http://maven.eclipse.org/nexus/content/repositories/testing/org/eclipse/swt/
На этом есть ошибка: дальнейшая информация:
https://bugs.eclipse.org/bugs/show_bug.cgi?id=199302
Ответ 2
Я создал maven repo для артефактов windows, Linux и osx в github:
https://github.com/maven-eclipse/swt-repo
Чтобы использовать его, просто поместите следующее в свой pom.xml:
<repositories>
<repository>
<id>swt-repo</id>
<url>https://raw.githubusercontent.com/maven-eclipse/swt-repo/master/</url>
</repository>
</repositories>
Затем вы можете просто ссылаться на зависимость SWT, относящуюся к вашей платформе. Например:
<dependency>
<groupId>org.eclipse.swt</groupId>
<artifactId>org.eclipse.swt.win32.win32.x86</artifactId>
<version>4.4</version>
</dependency>
Для других платформ просто замените artifactId на соответствующее значение:
- org.eclipse.swt.win32.win32.x86
- org.eclipse.swt.win32.win32.x86_64
- org.eclipse.swt.gtk.linux.x86
- org.eclipse.swt.gtk.linux.x86_64
- org.eclipse.swt.cocoa.macosx
- org.eclipse.swt.cocoa.macosx.x86_64
Кроме того, артефакты для SWT 4.3.2, 4.3.1, 4.3.0, 4.2.2, 4.2.1, 3.8, 3.7.2 и 3.5.1 также доступны из этого репозитория.
Мы используем подход на основе селена для автоматического развертывания артефактов новых версий SWT по мере их выпуска. Исходный код для автоматизации открыт и доступен на github:
https://github.com/hennr/swt-release-fetcher
Счастливое кодирование!
Ответ 3
Возьмите здесь нужную вам версию. SWT по-прежнему не привязан к платформе нейтрально, поэтому вам нужно обратить внимание на используемую платформу.
Я захватил версию Windows, с postfix 3.6.1-win32-win32-x86. Я использовал это как versionId, оставив платформу из полей group/artifact. Это может быть не совсем правильно для гуру maven, но подходит для меня достаточно хорошо (по крайней мере пока). Также я использую debug-версию jar, которая подходит для разработки.
Итак, идем.
Распакуйте архив и затем выполните его (в корневой папке вашего архива):
mvn install:install-file -DgroupId=org.eclipse -DartifactId=swt -Dversion=3.6.1-win32-win32-x86 -Dfile=swt-debug.jar -Dpackaging=jar -DlocalRepositoryPath=../path/to/your/local/project/repo
а затем, чтобы установить источники:
mvn install:install-file -DgroupId=org.eclipse -DartifactId=swt -Dversion=3.6.1-win32-win32-x86 -Dfile=src.zip -Dpackaging=jar -Dclassifier=sources -DlocalRepositoryPath=../path/to/your/local/project/repo
Добавьте ссылку на локальное репо на ваш pom.xml,
<repositories>
<repository>
<id>local</id>
<name>Project Local Repository</name>
<layout>default</layout>
<url>file://${project.baseDir}/path/to/your/local/project/repo/</url>
</repository>
</repositories>
а затем добавьте сама зависимость:
<dependency>
<groupId>org.eclipse</groupId>
<artifactId>swt</artifactId>
<version>3.6.1-win32-win32-x86</version>
</dependency>
Надеюсь, это поможет кому-то, и я получаю какую-то карму за щедрость по другим, более сложным вопросам...;)
Ответ 4
взгляните на плагин maven-eclipse. Предполагая, что у вас есть локальная установка затмения в /opt/eclipse, сделайте следующее:
mvn eclipse:to-maven -DeclipseDir=/opt/eclipse/ -DstripQualifier=true
Это создаст poms для всех плагинов eclipse и загрузит их в локальное репо. Также можно загрузить сгенерированные помпы и банки в удаленное репо с помощью опции плагина "deployTo".
См. также:
maven-eclipse-plugin
После этого вы можете использовать артефакты из репозитория.
Надеемся, что информация полезна.
-Martin
Ответ 5
Как и в Neon.2 (v 4.6.2), множество Eclipse, включая SWT, доступны на Maven Central:
https://repo1.maven.org/maven2/org/eclipse/platform/
Обратите внимание, что в отличие от ранее опубликованных артефактов SWT идентификатор группы был изменен на org.eclipse.platform
. Чтобы включить SWT для Windows, например, добавьте это в свой pom:
<dependency>
<groupId>org.eclipse.platform</groupId>
<artifactId>org.eclipse.swt.win32.win32.x86_64</artifactId>
<version>${swt-version}</version> <!-- currently 3.105.2 -->
</dependency>
Теперь все выпуски платформы Eclipse (в настоящее время публикуемые каждый год около июня) будут доступны как артефакты maven. См. Здесь, чтобы найти последний номер версии: https://search.maven.org/#search%7Cga%7C1%7Corg.eclipse.platform%20swt
Подробнее см. здесь: https://objectteams.wordpress.com/2017/01/09/eclipse-neon-2-is-on-maven-central/