maven网站插件在代理

时间:2015-07-31 14:36:55

标签: java maven proxy maven-plugin maven-site-plugin

我正在使用 maven (apache-maven-3.2.1)和maven-site-plugin进入我的项目。

在代理后面 mvn site时,我收到以下警告/缓慢:

[INFO] Rendering site with org.apache.maven.skins:maven-default-skin:jar:1.0 skin.
[INFO] Generating "Dependencies" report         --- maven-project-info-reports-plugin:2.8:dependencies
[WARNING] The repository url 'http://download.oracle.com/maven' is invalid - Repository 'oracle.releases' will be blacklisted.
[WARNING] The repository url 'http://snapshots.repository.codehaus.org' is invalid - Repository 'codehaus-snapshots' will be black
listed.
[WARNING] The repository url 'http://repository.codehaus.org' is invalid - Repository 'codehaus' will be blacklisted.
[WARNING] The repository url 'http://download.java.net/maven/glassfish' is invalid - Repository 'glassfish-repository' will be bla
cklisted.
[WARNING] The repository url 'http://download.java.net/maven/2/' is invalid - Repository 'maven2-repository.dev.java.net' will be
blacklisted.

我获得了成功,但我认为将有效的存储库列入黑名单是一个问题...

在代理后面,所以我在我的maven全局设置($M2_HOME/conf/settings.xml)中定义了一个代理。

对于某些插件,例如release-plugin(参见示例)或surefire-plugin,我必须使用代理设置覆盖参数才能获得成功,但我找不到arguments( maven-site-plugin的等效配置。

代理背后的

maven-release示例

        <plugin>
            <artifactId>maven-release-plugin</artifactId>
            <version>2.5.2</version>
            <configuration>
                <arguments>${proxyString}</arguments>
            </configuration>
        </plugin>
(...)
    <profile>
        <id>proxy</id>
        <activation>
            <activeByDefault>false</activeByDefault>
        </activation>
        <properties>
            <proxyString>-Djava.net.useSystemProxies=true
                -Dhttp.proxyHost=myProxy -Dhttp.proxyPort=3128
                -Dhttps.proxyHost=myProxy -Dhttps.proxyPort=3128</proxyString>
        </properties>
    </profile>

我认为maven网站使用maven-project-info-reports-plugin但我不知道如何将代理参数传递给此插件(根据the doc - 由maven-site在内部配置)?

我看到old discussion on apache maven mailing list,但这对我没有帮助。

如何为mvn site设置代理?

1 个答案:

答案 0 :(得分:3)

日志列出了已弃用,已移动或不存在的存储库,因此需要此警告。

由于此步骤可能非常慢,(通过此LDAP Groups to Subversion Authz Groups Bridge script)有一种方法可以避免生成依赖项位置:

<build>
    <pluginManagement>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-project-info-reports-plugin</artifactId>
                <configuration>
                   <dependencyLocationsEnabled>false</dependencyLocationsEnabled>
                </configuration>
            </plugin>
        </plugins>
    </pluginManagement>