将 SWT 作为 Gradle 依赖项导入

Import SWT as a Gradle dependency

我正在研究如何将 SWT UI 库导入到我的 Java 项目中。 我在 Maven 上找到了 SWT 的 pom 文件:https://repo1.maven.org/maven2/org/eclipse/swt/3.3.0-v3346/swt-3.3.0-v3346.pom

我从文件中将以下行添加到我的 build.gradle 文件

compile "org.eclipse:swt:3.3.0"

然而,当我将它添加到我的 build.gradle 时,我收到了以下错误:

Project 'L-CAD Main' is missing required library: '/home/ashley/unresolved dependency - org.eclipse swt 3.3.0'

如果我理解正确,这意味着它找不到依赖项,所以我不知道我做错了什么。

我的 IDE 是 Eclipse。

您必须在依赖行中使用整个包名称,包括版本号。

因此添加:compile "org.eclipse:swt:3.3.0-v3346"build.gradle 文件。

将 JCenter 与 Gradle 一起用于编译 Eclipse SWT 时。

Gradle 为 SWT 从中提取的存储库是 JCenter SWT

相应地编辑您的 gradle.build。您需要将编译行添加到 Grable.builddependencies closure。例如,如果你想构建 64 位 Linux 使用:

compile 'org.eclipse.swt:org.eclipse.swt.gtk.linux.x86_64:4.3'

根据Eclipse Foundation

SWT is an open-source widget toolkit for Java designed to provide efficient, portable access to the user-interface facilities of the operating systems on which it is implemented.

这意味着不同于其他 Java GUI 工具包,如 Swing,SWT 不提供自己的小部件,但允许您编写一个 Java UI 可以与 SWT 的 platform-specific 实现一起使用以获得所需的 OS,例如 windows 或 mac.

对于您想要的操作系统,您需要 select 来自 JCenter SWT 的相应库版本,其中来自 gradle.build 的编译行应反映:

compile 'org.eclipse.swt:<target platform>:4.3'

其中 <target platform> 例如 org.eclipse.swt.cocoa.macosx.x86_64/org.eclipse.swt.win32.win32.x86_64/.