在Eclipse Java项目中以Gradle的方式导入SWT的正确方法是什么?
Stackoverflow上的以下解决方案不起作用(它导入了一个不包含类的小型SWT库,我无法使用任何SWT功能):
Import SWT as a Gradle dependency
我的应用程序需要使用SWT UI类和小部件(例如,Display、Shell、Composites等),并且必须绝对是跨平台的。
请注意,我的应用程序也使用了LWJGL,我可以使用下面提供完整Gradle代码的页面成功导入LWJGL(单击Release下的build,然后选择Gradle):
LWJGL build.gradle import code
谢谢你的帮助。
发布于 2018-05-20 00:55:29
从Eclipse 4.6.2开始,SWT (和所有Eclipse)发布到maven central。如果你使用的是Gradle,goomph插件有一个mavencentral插件,这使得它变得非常简单:
apply plugin: 'com.diffplug.gradle.eclipse.mavencentral'
eclipseMavenCentral {
release '4.7.0', {
compile 'org.eclipse.swt'
useNativesForRunningPlatform()
}
}发布于 2016-11-25 22:09:09
我不能完全确定eclipse插件和SWT应用程序之间的区别,但是您可以使用buildship build作为参考。可能需要使用buildSrc实用程序。
发布于 2016-11-26 01:02:46
**免责声明**我从未使用过SWT
我将SWT jars放在一个类似maven的目录结构中(请注意,我在这里选择了随机组/工件/版本...请适当调整)
myRepo/com/eclipse/swt/swt-core/4.1/swt-core-4.1-windows.jar
myRepo/com/eclipse/swt/swt-core/4.1/swt-core-4.1-linux.jar
myRepo/com/eclipse/swt/swt-utils/4.1/swt-utils-4.1-windows.jar
myRepo/com/eclipse/swt/swt-utils/4.1/swt-utils-4.1-linux.jar你可以在build.gradle中做这样的事情
org.gradle.nativeplatform.platform.OperatingSystem os = org.gradle.internal.os.OperatingSystem.current()
def osDeps = []
if (os.windows) {
osDeps = ['com.eclipse.swt:swt-core:4.1:windows', 'com.eclipse.swt:swt-utils:4.1:windows']
} else if (os.linux) {
osDeps = ['com.eclipse.swt:swt-core:4.1:linux', 'com.eclipse.swt:swt-utils:4.1:linux']
} else ... {
}
apply plugin: 'java'
repositories {
maven {
url file('myRepo')
}
}
dependencies {
compile 'com.foo:common-stuff:1.0'
compile osDeps
}或者,如果SWT jars在maven存储库中可用,则应该使用该文件夹,而不是本地文件夹。
https://stackoverflow.com/questions/40800943
复制相似问题