2

Mac OSX Snow Leopard で swt アプリケーションを動作させることができません。

Exception in thread "main" java.lang.UnsatisfiedLinkError: no swt-cocoa-3557 or swt-cocoa in swt.library.path, java.library.path or the jar file
    at org.eclipse.swt.internal.Library.loadLibrary(Unknown Source)
    at org.eclipse.swt.internal.Library.loadLibrary(Unknown Source)
    at org.eclipse.swt.internal.C.<clinit>(Unknown Source)
    at org.eclipse.swt.internal.cocoa.NSThread.isMainThread(Unknown Source)
    at org.eclipse.swt.graphics.Device.<init>(Unknown Source)
    at org.eclipse.swt.widgets.Display.<init>(Unknown Source)
    at org.eclipse.swt.widgets.Display.<init>(Unknown Source)
    at com.astrobetty.geotag.Hello.main(Hello.java:12)

-Dswt.library.path= および -Djava.library.path ステートメントを「VM 引数」に追加し、Eclipse 実行構成ページの「環境」セクションでそれらを変数として設定しようとしました。

.jar ファイルが指定したパスにあることを確認しました。.jar の中を見ると、次のライブラリが含まれているようです。

     102 Feb 12 13:21 META-INF
     183 Feb 12 13:21 external.xpt
   37104 Nov 17  2009 libswt-awt-cocoa-3557.jnilib
  287228 Nov 17  2009 libswt-cocoa-3557.jnilib
  548252 Nov 17  2009 libswt-pi-cocoa-3557.jnilib
  313420 Nov 17  2009 libswt-xulrunner-cocoa-3557.jnilib
    136 May 23 22:19 org
     13 Feb 12 13:21 version.txt

これを機能させる方法についてのアイデアはありますか? それはまったく可能ですか?

ここで詳しく説明されているように、「依存プロジェクト」としてswtを追加しました

http://www.eclipse.org/swt/eclipse.php

そして、編集時に.jarファイルを見つけるようです(swtクラスとメソッドの構文チェックなどを取得します)。

4

2 に答える 2

2

Androidでも同じ問題がありました。私の場合、次のように解決しました。

から「swt-3.7.1-cocoa-macosx-x86_64.zip」をダウンロード

http://archive.eclipse.org/eclipse/downloads/drops/R-3.7.1-201109091335/

「swt.jar」を「android-sdk-macosx/tools/lib/x86_64」ディレクトリに配置します。既存の swt.jar を安全に上書きできます。

于 2013-06-26T02:54:18.190 に答える
0

「依存プロジェクト」の追加は IDE では機能しますが、展開では機能しません。あなたはおそらく OSGi 環境にいます...どのように製品を展開しているのかわかりませんが、.product ファイルを作成する場合 (新規->製品構成)、プラグインと SWT プラグインを含めてからその製品を使用してエクスポートすると、うまくいくと確信しています。

于 2010-05-24T18:05:16.927 に答える