0

我在插件依赖方面遇到了麻烦。

我想使用“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在中央回购中寻找proguard 4.8。我如何在自己的仓库中强制执行 Maven 搜索?

对不起我糟糕的英语,我希望你能理解我。

4

2 回答 2

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

于 2013-03-16T18:30:50.483 回答
0

您必须编辑.m2/settings.xml您的主文件夹(以及运行 Maven 作业的每个用户的主文件夹)中的文件。您必须在此处将 Nexus 添加为存储库,如此处所述。基本上配置如下所示:

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

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

于 2012-11-14T19:10:04.647 回答