- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
public static void loadSWT() {
try {
File file = null;
if (PlatformUtils.IS_WINDOWS) {
file = new File("lib/swtwin32.jar"); // x86
if (PlatformUtils.JVM_ARCH.equals("64")) {
file = new File("lib/swtwin64.jar"); // x64
}
} else if (PlatformUtils.IS_OSX) {
file = new File("lib/swtmac32.jar"); // x86
if (PlatformUtils.JVM_ARCH.equals("64")) {
file = new File("lib/swtmac64.jar"); // x64
} else if (PlatformUtils.OS_ARCH.startsWith("ppc")) {
file = new File("lib/swtmaccb.jar"); // carbon
}
} else if (PlatformUtils.IS_LINUX) {
file = new File("lib/swtlin32.jar"); // x86
if (PlatformUtils.JVM_ARCH.equals("64")) {
file = new File("lib/swtlin64.jar"); // x64
}
}
if ((file == null) || !FileUtils.isExistingFile(file)) {
file = new File("lib/swt.jar"); // old system
}
final Method method = URLClassLoader.class.getDeclaredMethod(
"addURL", new Class[] { URL.class });
method.setAccessible(true);
method.invoke(ClassLoader.getSystemClassLoader(), file.toURI()
.toURL());
} catch (final Exception e) {
e.printStackTrace();
}
}
вот так приколачиваем SWT в систему.
особенное веселье в строках 25-28.
bormand 29.01.2013 21:31 # 0
Круто! Этот чит еще и недокументированный?
P.S. Установка classpath из внешней обертки нынче не в моде?
Lure Of Chaos 29.01.2013 21:37 # +1
таки лучше было бы сразу в classpath кидать, но нет же...
bormand 29.01.2013 21:52 # 0
Вот любит гугл эту древнюю доку. Всегда мне ее подсовывает вместо свежих.
3.14159265 29.01.2013 22:10 # 0
Можно без проблем собрать совместимый байт-код вплоть до 1.0
someone 29.01.2013 22:28 # +1
bormand 30.01.2013 07:26 # +4
someone 30.01.2013 10:56 # 0
Там есть способ подключения разных нативных библиотек для разных платформ.
tir 30.01.2013 08:42 # +1