从Maven中央存储库下载guice3.0工件

| 我正在尝试将struts2网络应用程序从guice2.0升级到guice3.0。 我正在尝试使用Maven码头进行测试。 我已经成功升级了pom.xml以使用3.0版本的正确版本和groupId,但是如果我调用mvn jetty:run 我看到它正在尝试下载 guice-3.0-no_deps.jar 哪个会引发构建错误,并且找不到中央存储库? 如果我不包含任何guice扩展名,则不会收到此错误。 有任何想法吗? 谢谢     
已邀请:
        我也将此问题发布到了guice用户组。 这是我收到的答案。 guice-3.0-no_deps.jar是用于编译扩展程序的构建时工件,但在运行时不是必需的-它不在Maven Central上,因为Guice团队不希望人们依赖误在此“超级jar”上。这些扩展对guice-3.0-no_deps.jar有一个可选的依赖关系(以便它们可以编译),但在运行时情况下,它们对guice-3.0.jar也具有一个非可选的依赖关系。 表现良好的Maven插件应该看到no_deps依赖项是可选的,如果缺少,则不会抛出构建错误,因此这听起来像是Jetty插件中的错误。要解决Jetty错误,可以显式隐藏此依赖关系,如下所示:
    <dependency>
        <groupId>com.google.inject.extensions</groupId>
        <artifactId>guice-struts2</artifactId>
        <version>3.0</version>
        <exclusions>
            <exclusion>
                <groupId>com.google.inject</groupId>
                <artifactId>guice</artifactId>
            </exclusion>
        </exclusions>
    </dependency>
    <dependency>
        <groupId>com.google.inject</groupId>
        <artifactId>guice</artifactId>
        <version>3.0</version>
    </dependency>
请注意,我们无法在原始build pom中执行此操作,因为在进行原始编译时我们仍然需要no_deps依赖项。     

要回复问题请先登录注册