Использование Maven с QT Jambi
Вопрос
Я только начинаю с QT Jambi, и у меня есть некоторые проблемы, когда Maven-Plugin работал. Я получаю следующее сообщение об ошибке:
Ошибка] Не удалось выполнить целевой net.sf.qtjambi: qtjambi-maven-plugin: 4.6.3.1: генерировать (default-cli) на Project degooclientgui: выполнение по умолчанию Cli net.sf.qtjambi: qtjambi-maven-plugin : 4.6.3.1: генерировать сбой: плагин net.sf.qtjambi: qtjambi-maven-plugin: 4.6.3.1 или одна из его зависимостей не может быть решено: не удалось собрать зависимости для net.sf.qtjambi: qtjambi-maven-plugin : jar: 4.6.3.1 (): не удалось прочитать дескриптор артефакта для net.sf.qtjambi: qtjambi-maven-plugin-win32: jar: 4.6.3.1: не удалось перенести артефакт net.sf.qtjambi: qtjambi-maven-plugin -win32: POM: 4.6.3.1 от/до qtjambi (http://qtjambi.sourceforge.net/maven2/): проверка проверки контроля не удалась, проверка не доступна в репозитории -> [Справка 1
Мой помпон выглядит так:
<repositories>
<repository>
<id>qtjambi</id>
<name>qtjambi</name>
<url>http://qtjambi.sourceforge.net/maven2/</url>
<releases>
<checksumPolicy>ignore</checksumPolicy>
</releases>
<snapshots>
<checksumPolicy>ignore</checksumPolicy>
</snapshots>
</repository>
</repositories>
<pluginRepositories>
<pluginRepository>
<id>qtjambi</id>
<name>qtjambi</name>
<url>http://qtjambi.sourceforge.net/maven2/</url>
<releases>
<checksumPolicy>ignore</checksumPolicy>
</releases>
<snapshots>
<checksumPolicy>ignore</checksumPolicy>
</snapshots>
</pluginRepository>
</pluginRepositories>
<dependencies>
<dependency>
<groupId>net.sf.qtjambi</groupId>
<artifactId>qtjambi</artifactId>
<version>4.6.3</version>
</dependency>
</dependencies>
<build>
<sourceDirectory>src</sourceDirectory>
<testSourceDirectory>tests</testSourceDirectory>
<plugins>
<plugin>
<groupId>net.sf.qtjambi</groupId>
<artifactId>qtjambi-maven-plugin</artifactId>
<version>4.6.3.1</version>
<executions>
<execution>
<id>qtjambi</id>
<goals>
<goal>generate</goal>
</goals>
</execution>
</executions>
<configuration>
<!-- Specifies where sources are. This parameter is MANDATORY -->
<sourcesDir>src</sourcesDir>
<!-- following parameters aren't mandatory, they use defaults as specified here
if not specified
<translationsDir>src/main/resources/translations</translationsDir>
<destinationDir>target/generated-sources/qtjambi</destinationDir>
-->
<!-- cause -noobsolete switch for lupdate -->
<noObsoleteTranslations>true</noObsoleteTranslations>
</configuration>
</plugin>
</plugins>
</build>
Как вы можете видеть, я пытался игнорировать ошибки контроля, но это не помогает. Я также пытался указать другие версии, которые доступны в репозитории. Это тоже не помогло. Любые идеи? Заранее спасибо!
Решение
К вашему сведению, нет версии win64 4.6.3.1.
Ваша ошибка ясно говорит о Win32, а не Win64, но стоит попытаться понять, работает ли версия 4.6.3, в этой версии есть Win32 и Win64). Возможно, лицо, испытывающее выше и подтверждающее, использовал 32 -битный win7 или что -то в этом роде. Но вы четко заявили, что вы Win7 64bit.
Хотя, если вы используете 32 -битный JRE для запуска Maven, система будет думать, что это 32 -битная система. Может быть, это то, что вы делаете, и объясняет, почему ваш 64-битный Win7 пытается разрешить Qtjambi-Maven-Plugin-Win32.
Pom.xml плагина автоматически выбирает qtjambi-maven-plugin-win32 или qtjambi-maven-plugin-win64 на основе платформы во время выполнения.
2 параметры на решении для исправления (выберите один)
1) Используйте версию 4.6.3
2) Добавьте в раздел в ваш проект POM, чтобы исключить GroupId = net.sf.qtjambi artifactid = qtjambi-maven-plugin-win64. У меня нет примера для руки, но редактор Eclipse M2E POM.xml позволяет быстро и легко исключить. После того, как вы исключили вручную добавить дополнительную зависимость для Qtjambi-Maven-Plugin-Win32. Насколько я понимаю, часть Depedent Platform предоставляет EXE, который может быть запущен, и, поскольку все Win64 поддерживает выполнение двоичных файлов Win32, тогда использование Win32 должно быть в порядке.
К вашему сведению
http://repository.qt-jambi.org/nexus/content/repositories/releases-before-2011/net/sf/qtjambi/qtjambi-maven-plugin-win64/ Это каталог, где должна быть версия Win64 4.6.3.1.
http://repository.qt-jambi.org/nexus/content/repositories/releases-ffore-2011/net/sf/qtjambi/qtjambi-maven-plugin-win32/4.6.3.1/ Это где на самом деле находится плагин Win32 4.6.3.1.
Отредактировано в феврале 2013 года - заменить "http://qt-jambi.org/maven2/" с "http://repository.qt-jambi.org/nexus/content/repositories/releases-berfore-2011/"Это текущий URL