3.1でSWTアプリの作成

Eclipse3.1は、プラグインがJARの形で配置されているので、SWTの実行に必要なJARとネイティブ(Windowsはdll)が指定しずらい。


JARはこれ指定すればいいみたいだけど、
org.eclipse.swt.win32.win32.x86_3.1.0.jar


dllもこれに含まれていて、困ったな。対処としてはこんな感じか。


・jarを展開してdllをコピってくる(多少無理やり感)
・JARの中のdllも指定できるといいのだが?(こんな感じで)

 -Djava.library.path=C:\eclipse\plugins\org.eclipse.swt.win32.win32.x86_3.1.0.jar!swt-win32-3138.dll

※注:できたらいいなということで、実際はできません。java.library.pathのパスにJARに含まれるdllJAR内のパスを指定する書き方があるといいのになぁ
・別途SWTのソース&バイナリをダウンロードして、インポートすれば使えるが(なんかこれが正しい道っぽいけど、ローカルに必要なものあるのに、わざわざなぁ。。。みたいな)。


■追記
VEで作ったSWTアプリはdll指定せんでも、実行できる。なんでだぁ?と思ったらビルドパスで、JARの「Native Library Location」というのが指定されてる。指定先は、VE側でdllを置いた場所みたい(workspaceの.metadata〜)。