我刚刚开始QT Jambi,我有一些问题让Maven-Plugin上班。我收到以下错误消息:

错误]无法执行目标net.sf.qtjambi:qtjambi-maven-plugin:4.6.3.1:project degooclientgui上的生成(default-cli):execution execution decuttion dectault-cli of Goal net.sf.sf.qtjambi:qtjambi-maven-plugin:qtjambi-maven-plugin :4.6.3.1:生成失败:插件net.sf.qtjambi:qtjambi-maven-plugin:4.6.3.1或它的一个依赖项之一无法解决:无法收集net.sf.qtjambi的依赖关系: :jar:4.6.3.1():未能阅读net.sf.qtjambi的文物描述符:qtjambi-maven-plugin-win32:jar:4.6.3.1:无法转移fressifact net.sf.sf.qtjambi:qtjambi-maven-maven-plugin-plugin-plugin-plugin- -win32:POM:4.6.3.1从/到qtjambi(http://qtjambi.sourceforge.net/maven2/):校验和验证验证失败,没有可用的校验库 - > [help 1

我的pom看起来像这样:

  <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>

如您所见,我试图忽略校验和错误,但这无济于事。我还尝试过指定存储库中可用的其他版本。那也无济于事。有任何想法吗?提前致谢!

有帮助吗?

解决方案

仅供参考,这是4.6.3.1的Win64版本。

您的错误清楚地谈论了Win32不是Win64,但是值得一看的是4.6.3版本是否有效,此版本具有Win32和Win64)。也许上面测试和确认的人使用了Win7 32bit或其他东西。但是您清楚地说您是Win7 64位。

尽管如果您使用32位JRE运行Maven,那么该系统将认为它是32位系统。也许这就是您正在做的事情,并解释了为什么您的Win7 64bit试图解决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这是在pom.xml的构建/插件/插件/*部分内完成的。我没有一个示例,但是Eclipse m2e pom.xml编辑器可以快速简便地排除。一旦您将手动添加QTJAMBI-MAVEN-PLUGIN-WIN32的其他依赖性。我的理解是平台depeDent部分提供了可以运行的EXE,并且由于所有Win64都支持Win32二进制文件的执行,因此使用Win32应该可以。

供参考

http://repository.qt-jambi.org/nexus/content/repositories/releases-before-2011/net/sf/sf/qtjambi/qtjambi/qtjambi-maven-maven-maven-plugin-win64/ 这是4.6.3.1 Win64版本的目录。

http://repository.qt-jambi.org/nexus/content/repositories/releases-before-2011/net/sf/sf/qtjambi/qtjambi/qtjambi/qtjambi-maven-maven-maven-plugin-win32/4.6.6.3.1/ 这是4.6.3.1 Win32插件实际所在的地方。

编辑2013年2月 - 替换”http://qt-jambi.org/maven2/“ 和 ”http://repository.qt-jambi.org/nexus/content/repositories/releases-before-2011/“这是当前的URL

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top