嗯,简而言之,我可能需要获取新的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/
所以:
TIA
PS:我主要是Eclipse产品网站布局的菜鸟,通常会迷失在谷歌搜索结果和/或Eclipse网站本身......所以尽管答案可能对你来说很明显,但对于你来说可能并非如此我,甚至是回顾性的。答案 0 :(得分:39)
我为Windows创建了一个maven repo,Linux&amp; github上的osx工件:
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替换为适当的值:
此外,SWT 4.3.2,4.3.1,4.3.0,4.2.2,4.2.1,3.8,3.7.2&amp;此存储库中也提供了3.5.1。
我们使用基于selenium的方法自动部署新SWT版本的工件。自动化的源代码是开放的,可以在github上找到:
https://github.com/hennr/swt-release-fetcher
快乐的编码!
答案 1 :(得分:15)
更新:回购邮件是taken down,由repo.eclipse.org取代,后者不包含SWT工件。
您可以使用eclipse托管的Nexus存储库(此存储库处于“测试”状态)
<击> http://maven.eclipse.org/nexus/content/repositories/testing/org/eclipse/swt/ 击>
此处有一个错误,有更多信息: https://bugs.eclipse.org/bugs/show_bug.cgi?id=199302
答案 2 :(得分:10)
抓取here您需要的版本。 SWT仍然没有捆绑平台中立,因此您必须注意要使用的平台。 我抓住了windows版本,后缀为3.6.1-win32-win32-x86。我已将其用作versionId,使平台脱离组/工件字段。这对于maven gurus来说可能并不完全正确,但对我来说非常合适(至少目前如此)。此外,我正在使用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>
希望这对某人有所帮助,而且我会因为我的其他更难的问题而得到一些赏金;;)
答案 3 :(得分:4)
看看maven-eclipse-plugin。假设您在/ opt / eclipse中安装了本地eclipse,请执行以下操作:
mvn eclipse:to-maven -DeclipseDir=/opt/eclipse/ -DstripQualifier=true
这将为所有eclipse插件生成poms并将它们上传到您的本地存储库。也可以使用插件选项“deployTo”将生成的poms和jar加载到远程仓库。
之后,您可以使用存储库中的工件。
希望这些信息有用。
-Martin
答案 4 :(得分:2)
从Neon.2(v 4.6.2)开始,Maven Central上提供了许多Eclipse包,包括SWT:
https://repo1.maven.org/maven2/org/eclipse/platform/
请注意,与早期发布的SWT工件相比,组ID已更改为org.eclipse.platform
。例如,要包含SWT for 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平台版本(目前每年6月左右发布)将作为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/