Ошибка интеграции Qt Jambi в Windows 64 бит - PullRequest
2 голосов
/ 26 сентября 2011

Не могу понять, как правильно интегрировать Qt Jambi в затмение. Вот что я сделал:

  1. Я установил версию инструментария для Windows 64 бит;
  2. Я скопировал необходимые интеграционные плагины в {ECLIPSE_PATH}\plugins;
  3. Я запустил eclipse и установил каталог установки Qt Jambi в настройках;
  4. Затем, когда я попытался применить новые настройки, я получил сообщение об ошибке, что-то говорило о модуле, который не может быть запущен ({QT_JAMBI_PATH}\bin\qtdesigner.dll);
  5. После перезапуска затмения я не могу найти ни одного из представлений интеграции Qt Jambi. Я могу переключиться на перспективу Qt Designer UI, но новая панель не появляется. Наконец, .jui файлы не распознаются и отображаются как простые текстовые файлы.

Файл DLL qtdesigner.dll не существует в папке bin. Я попробовал ту же процедуру, используя 32-битное затмение и 32-битное Qt Jambi, но оно тоже не работает.

Как вы думаете, откуда возникла проблема?

1 Ответ

4 голосов
/ 27 сентября 2011

В настоящее время не существует известной версии плагинов интеграции QtJambi Eclipse, которые совместимы с 64-битной JVM Windows и, следовательно, также предоставляются как 64-битные DLL (так как многие его части являются компонентами собственного кода).

Вотофициальная страница, подтверждающая это утверждение: http://qt.nokia.com/products/eclipse-integration/

Кроме того, исходный код интеграции QtJambi Eclipse никогда не был выпущен сообществу, чтобы позволить им либо поддерживать его, либо создавать версии для других ОС и ABI (например, 64-битных).Windows).Также версия на странице, вероятно, наиболее совместима с более старыми версиями Eclipse, такими как Eclipse 3.4 и 3.5.

Однако не все потеряно, я намерен (как один из сопровождающих QtJambi) получить что-то обратноработать снова в течение следующих 6 месяцев.Но мое текущее внимание сосредоточено на более неотложных вопросах в рамках проекта, как указывает наша система отчетов об ошибках.

...

Невозможно смешивать 32-битные DLL в 64-битном адресном пространстве процесса простым/ Наивный способ.Поэтому, как правило, все EXE и DLL должны быть одного вида.Поскольку мы знаем, что интеграция QtJambi Eclipse работает с Windows 32bit, ниже приведена некоторая информация, которая поможет вам в этом.

...

64-битная система Windows способна запускать 32-битные приложения и также способна64-битной и 32-битной JVM установлены отдельно (просто загрузите соответствующий установочный EXE-файл JVM для каждого 32-битного и 64-битного типа и установите оба отдельно).

Затем вам, конечно, нужно получить версию Eclipse для Win32 и распаковать ее./ install.

Чтобы 32-битная версия Eclipse могла работать в 64-битной системе, необходимо вручную отредактировать файл eclipse.ini. Вот мой пример рабочего eclipse.ini с важными частями.из выделенных дополнений (взято из eclipse-jee-indigo-win32, то есть Eclipse 3.7 Indigo из http://www.eclipse.org/downloads/download.php?file=/technology/epp/downloads/release/indigo/R/eclipse-jee-indigo-win32.zip):

eclipse.ini

-startup
plugins/org.eclipse.equinox.launcher_1.2.0.v20110502.jar
--launcher.library
plugins/org.eclipse.equinox.launcher.win32.win32.x86_1.1.100.v20110502
-product
org.eclipse.epp.package.jee.product
-showsplash
org.eclipse.platform
-vm
C:/Program Files (x86)/Java/jdk1.6.0_26/jre/bin/client/jvm.dll
--launcher.defaultAction
openFile
--launcher.XXMaxPermSize
256M
-vmargs
-Dosgi.requiredJavaVersion=1.5
-Xms64m
-Xmx1280m

Важные изменения, которые я гарантирую внести в файл eclipse.exe по умолчанию:

-vmC: / Program Files (x86) /Java/jdk1.6.0_26/jre/bin/client/jvm.dll

Обратите внимание, что вам нужно изменить путь к файлу, который существует для вашегоJDK, который установлен, в моем примере я использую Sun / Oracle JDK.Так что проверьте, что файл действительно существует в вашей системе, это заставляет 32-битную JVM использоваться с 32-битной версией Eclipse.Я не знаю, почему их контейнер exe (eclipse.exe) не делает этого во время выполнения, но все же.

- launcher.XXMaxPermSize256M

Всегда хорошая идея, так как Eclipse требует больше, чем обычно, куча PermGen.Но все версии eclipse, вероятно, нуждаются в такой конфигурации, и это не влияет на вашу проблему, просто некоторые советы здесь.

...