Как устранить ошибку swt-cocoa-3557 или swt-cocoa в файле swt.library.path, java.library.path или в файле jar? - PullRequest
1 голос
/ 24 мая 2010

Я не могу заставить приложение SWT работать на Mac OSX Snow Leopard.

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 в виртуальную машинуАргументы "hand" также попытались установить их в качестве переменных в разделе "environment" страницы конфигурации запуска 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.)

Ответы [ 2 ]

2 голосов
/ 26 июня 2013

У меня была такая же проблема в 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.

0 голосов
/ 24 мая 2010

Добавление «зависимого проекта» работает в IDE, но не для развертывания. Вы, вероятно, находитесь в среде OSGi ... Я не уверен, как вы развертываете продукт, но если вы создаете файл .product (Новый -> Конфигурация продукта), включите ваши плагины и плагины SWT, а затем экспортировать с использованием этого продукта, и я уверен, что это сработает для вас.

...