Maven2插件依赖

时间:2012-11-14 18:56:15

标签: java maven maven-2

我有插件依赖的麻烦。

我想使用“proguard-maven-plugin”,但默认情况下这个插件使用proguard 4.3。 Proguard 4.3不支持jdk 7.

要解决我的问题,我只需要使用proguard 4.6+。 Buuut,中央回购的最后一个版本是4.4。我可以从proguard repo手动下载proguard 4.6+,但是如何将它包含在插件中?


我有自己的nexus repo,我把proguard 4.8放在那里。如何从我的仓库加载“proguard-maven-plugin”的依赖?

我在那里写道:http://www.sonatype.com/people/2008/04/how-to-override-a-plugins-dependency-in-maven/,但maven在中央回购中看起来是预测4.8。我怎样才能在我自己的仓库中强制进行maven搜索?

对不起我可怕的英语,我希望你能理解我。

2 个答案:

答案 0 :(得分:0)

您必须编辑主文件夹中的文件.m2/settings.xml(以及运行Maven作业的每个用户的主文件夹)。在那里,您必须将您的Nexus添加为here所述的存储库。基本上配置看起来像这样:

<settings>
  ...
  <mirrors>
    <mirror>
      <id>mynexus</id>
      <name>My Nexus</name>
      <url>http://mynexusurl</url>
      <mirrorOf>*</mirrorOf>
    </mirror>
  </mirrors>
  ...
</settings>

此外,您必须将Nexus配置为镜像中央存储库。

答案 1 :(得分:0)

也许这也会有所帮助,我不使用它,但这是更改依赖项的配置形式

<plugin>
    <artifactId>proguard-maven-plugin</artifactId>
    <version>2.0.4</version>
    <dependencies>
        <dependency>
            <groupId>net.sf.proguard</groupId>
            <artifactId>proguard</artifactId>
            <version>4.6</version>
        </dependency>
    </dependencies>
</plugin>

也是一个蚂蚁运行的例子

<plugin>
    <artifactId>maven-antrun-plugin</artifactId>
    <version>1.7</version>
    <dependencies>
        <dependency>
            <groupId>ant-contrib</groupId>
            <artifactId>ant-contrib</artifactId>
            <version>1.0b2</version>
            <exclusions>
                <exclusion>
                    <groupId>ant</groupId>
                    <artifactId>ant</artifactId>
                </exclusion>
            </exclusions>
        </dependency>
        <dependency>
            <groupId>org.apache.ant</groupId>
            <artifactId>ant-nodeps</artifactId>
            <version>1.8.1</version>
        </dependency>
    </dependencies>
</plugin>

还请注意!对于maven2 - 问题解决了maven3 http://jira.codehaus.org/browse/MNG-1323
对于多模块反应器构建插件的依赖关系在第一次使用插件时解决。如果您的依赖项没有在reactor构建中下载但在单个模块中正常工作,那么您可能需要将它包含在早期项目中 - 最简单的方法是添加到共享父级的pluginManagement