Хмммм ..... это моё первое приложение на QT Jambi и в значительной степени просто попытка вызвать окно.
Это команда терминала, которую я использовал:
java -XstartOnFirstThread -cp
qtjambi-4.6.3.jar: qtjambi-примеры-4.6.3.jar: qtjambi-MacOSX-GCC-4.6.3.jar :.
GUI
И, кстати, я использую Mac OS X Lion 64-bit на MacBook.
Вот результат вышеупомянутой команды:
Исключение в потоке "main" java.lang.ExceptionInInitializerError at
com.trolltech.qt.gui.QApplication. (QApplication.java:12) в
GUI.main (GUI.java:9) Вызывается: java.lang.RuntimeException: Загрузка
библиотека потерпела неудачу, прогресс на данный момент: Распаковка .jar файла:
'qtjambi-macosx-gcc-4.6.3.jar' Проверка архива
'Qtjambi-MacOSX-НКУ-4.6.3.jar'
- ключ кеша = 'gcc-20100817-1815'
- добавление libQtCore.4.dylib на карту библиотеки
- library: name = 'lib / libQtCore.4.dylib',
- добавление libQtGui.4.dylib на карту библиотеки
- библиотека: name = 'lib / libQtGui.4.dylib',
- добавление libQtXml.4.dylib на карту библиотеки
- library: name = 'lib / libQtXml.4.dylib',
- добавление libQtSql.4.dylib на библиотечную карту
- library: name = 'lib / libQtSql.4.dylib',
- добавление libQtSvg.4.dylib на карту библиотеки
- библиотека: name = 'lib / libQtSvg.4.dylib',
- добавление libQtHelp.4.dylib на библиотечную карту
- библиотека: name = 'lib / libQtHelp.4.dylib',
- добавление libQtScript.4.dylib на библиотечную карту
- library: name = 'lib / libQtScript.4.dylib',
- добавление libQtScriptTools.4.dylib на карту библиотеки
- library: name = 'lib / libQtScriptTools.4.dylib',
- добавление libQtMultimedia.4.dylib на карту библиотеки
- library: name = 'lib / libQtMultimedia.4.dylib',
- добавление libQtNetwork.4.dylib на карту библиотеки
- library: name = 'lib / libQtNetwork.4.dylib',
- добавить 'libQtOpenGL.4.dylib' на карту библиотеки
- библиотека: name = 'lib / libQtOpenGL.4.dylib',
- добавление libQtWebKit.4.dylib на карту библиотеки
- библиотека: name = 'lib / libQtWebKit.4.dylib',
- добавление libQtXmlPatterns.4.dylib на карту библиотеки
- library: name = 'lib / libQtXmlPatterns.4.dylib',
- добавление libphonon.4.dylib на библиотечную карту
- library: name = 'lib / libphonon.4.dylib',
- добавление libQtDBus.4.dylib на карту библиотеки
- библиотека: name = 'lib / libQtDBus.4.dylib',
- библиотека: name = 'plugins / phonon_backend / libphonon_qt7.dylib', никогда не загружаться
- библиотека: name = 'plugins / imageformats / libqjpeg.dylib', никогда не загружать
- библиотека: name = 'plugins / imageformats / libqgif.dylib', никогда не загружать
- библиотека: name = 'plugins / imageformats / libqmng.dylib', никогда не загружать
- библиотека: name = 'plugins / imageformats / libqtiff.dylib', никогда не загружать
- библиотека: name = 'plugins / imageformats / libqsvg.dylib', никогда не загружать
- библиотека: name = 'plugins / iconengines / libqsvgicon.dylib', никогда не загружаться
- библиотека: name = 'plugins / codecs / libqcncodecs.dylib', никогда не загружать
- библиотека: name = 'plugins / codecs / libqjpcodecs.dylib', никогда не загружать
- библиотека: name = 'plugins / codecs / libqkrcodecs.dylib', никогда не загружать
- библиотека: name = 'plugins / codecs / libqtwcodecs.dylib', никогда не загружать
- library: name = 'plugins / available / libqtaccessiblewidgets.dylib', никогда не загружаться
- библиотека: name = 'plugins / sqldrivers / libqsqlite.dylib', никогда не загружаться
- добавление libqtjambi.jnilib на библиотечную карту
- библиотека: name = 'lib / libqtjambi.jnilib',
- добавление libcom_trolltech_qt_core.jnilib на карту библиотеки
- библиотека: имя = 'lib / libcom_trolltech_qt_core.jnilib',
- добавление libcom_trolltech_qt_gui.jnilib на карту библиотеки
- библиотека: имя = 'lib / libcom_trolltech_qt_gui.jnilib',
- добавление libcom_trolltech_qt_xml.jnilib на библиотечную карту
- библиотека: имя = 'lib / libcom_trolltech_qt_xml.jnilib',
- добавление libcom_trolltech_qt_sql.jnilib на библиотечную карту
- библиотека: имя = 'lib / libcom_trolltech_qt_sql.jnilib',
- добавление libcom_trolltech_qt_svg.jnilib на библиотечную карту
- библиотека: имя = 'lib / libcom_trolltech_qt_svg.jnilib',
- добавление libcom_trolltech_qt_help.jnilib на библиотечную карту
- библиотека: имя = 'lib / libcom_trolltech_qt_help.jnilib',
- добавление libcom_trolltech_qt_script.jnilib на библиотечную карту
- библиотека: имя = 'lib / libcom_trolltech_qt_script.jnilib',
- добавление libcom_trolltech_qt_scripttools.jnilib на библиотечную карту
- library: name = 'lib / libcom_trolltech_qt_scripttools.jnilib',
- добавление libcom_trolltech_qt_multimedia.jnilib на библиотечную карту
- библиотека: имя = 'lib / libcom_trolltech_qt_multimedia.jnilib',
- добавление libcom_trolltech_qt_network.jnilib на библиотечную карту
- библиотека: имя = 'lib / libcom_trolltech_qt_network.jnilib',
- добавление libcom_trolltech_qt_opengl.jnilib 'на карту библиотеки
- библиотека: имя = 'lib / libcom_trolltech_qt_opengl.jnilib',
- добавление libcom_trolltech_qt_phonon.jnilib на библиотечную карту
- библиотека: имя = 'lib / libcom_trolltech_qt_phonon.jnilib',
- добавление libcom_trolltech_qt_webkit.jnilib на библиотечную карту
- библиотека: имя = 'lib / libcom_trolltech_qt_webkit.jnilib',
- добавление libcom_trolltech_qt_xmlpatterns.jnilib 'на карту библиотеки
- библиотека: имя = 'lib / libcom_trolltech_qt_xmlpatterns.jnilib',
- добавление 'classes.nib' к карте библиотеки
- library: name = 'lib / Resources / qt_menu.nib / classes.nib',
- добавление файла info.nib к карте библиотеки
- library: name = 'lib / Resources / qt_menu.nib / info.nib',
- добавление 'keyedobjects.nib' к карте библиотеки
- library: name = 'lib / Resources / qt_menu.nib / keyedobjects.nib',
- путь к плагину = 'плагины'
- используя каталог кэша: '/var/folders/4p/s98fh7114t5g3y05fh59ctpm0000gn/T/QtJambi_b-dahse_x86_64_4.6.3_gcc-20100817-1815'
- каталог кэша существует Загружаемая библиотека: 'libQtCore.4.dylib' ...
- с использованием спецификации развертывания
- ки! Загрузка библиотеки: 'libqtjambi.jnilib' ...
- с использованием спецификации развертывания
- ки! Загрузка библиотеки: 'libQtCore.4.dylib' ...
- уже загружено, пропуск ... Загрузка библиотеки: 'libcom_trolltech_qt_core.jnilib' ...
- с использованием спецификации развертывания
- ки! Загрузка библиотеки: 'libQtGui.4.dylib' ...
с использованием спецификации развертывания
в
com.trolltech.qt.internal.NativeLibraryManager.loadNativeLibrary (NativeLibraryManager.java:431)
в
com.trolltech.qt.internal.NativeLibraryManager.loadQtLibrary (NativeLibraryManager.java:355)
в com.trolltech.qt.Utilities.loadQtLibrary (Utilities.java:145) в
com.trolltech.qt.Utilities.loadQtLibrary (Utilities.java:141) в
com.trolltech.qt.gui.QtJambi_LibraryInitializer. (QtJambi_LibraryInitializer.java:7)
... еще 2 причины: java.lang.UnsatisfiedLinkError:
/private/var/folders/4p/s98fh7114t5g3y05fh59ctpm0000gn/T/QtJambi_b-dahse_x86_64_4.6.3_gcc-20100817-1815/lib/libQtGui.4.dylib:
Библиотека не загружена: /opt/local/lib/libpng12.0.dylib Ссылка на:
/private/var/folders/4p/s98fh7114t5g3y05fh59ctpm0000gn/T/QtJambi_b-dahse_x86_64_4.6.3_gcc-20100817-1815/lib/libQtGui.4.dylib
Причина: изображение не найдено
at java.lang.ClassLoader $ NativeLibrary.load (собственный метод) в
java.lang.ClassLoader.loadLibrary0 (ClassLoader.java:1827) в
java.lang.ClassLoader.loadLibrary (ClassLoader.java:1703) в
java.lang.Runtime.load0 (Runtime.java:770) в
java.lang.Runtime.load (Runtime.java:758) в
com.trolltech.qt.internal.NativeLibraryManager.loadLibrary_helper (NativeLibraryManager.java:458)
в
com.trolltech.qt.internal.NativeLibraryManager.loadNativeLibrary (NativeLibraryManager.java:426)
... еще 6
Вот исходный код GUI.java:
.
import gui.ViewWindow;
import com.trolltech.qt.gui.QApplication;
public class GUI {
public static ViewWindow viewWindow;
public static void main(String[] args) {
QApplication.initialize(args);
viewWindow = new ViewWindow();
QApplication.exec();
}
}
А вот ViewWindow.java:
package gui;
import com.trolltech.qt.gui.QWidget;
public class ViewWindow extends QWidget {
public ViewWindow() {
setWindowTitle("Level editor for Ben's Great Escape");
resize(1000, 600);
move(0, 0);
show();
}
}
Я сейчас очень смущен и ошеломлен, поэтому всем, кто видел это раньше, пожалуйста, посмотрите и опубликуйте любой вклад, который у вас может быть.