是否有一种方法可以将maven配置为始终下载源代码和javadocs?每次指定-DdownloadSources=true -DdownloadJavadocs=true(这通常伴随着运行mvn compile两次,因为我忘记了第一次)变得相当乏味。


当前回答

只是整合和准备了一个命令来解决源代码和文档下载…

mvn dependency:sources dependency:resolve -Dclassifier=javadoc

其他回答

打开settings.xml文件~/.m2/settings.xml(如果它不存在就创建它)。添加添加了属性的部分。然后确保activeProfiles包含新的概要文件。

<settings>

   <!-- ... other settings here ... -->

    <profiles>
        <profile>
            <id>downloadSources</id>
            <properties>
                <downloadSources>true</downloadSources>
                <downloadJavadocs>true</downloadJavadocs>
            </properties>
        </profile>
    </profiles>

    <activeProfiles>
        <activeProfile>downloadSources</activeProfile>
    </activeProfiles>
</settings>

编辑:正如Jingguo Yao提到的,这只适用于Eclipse IDE -同样也可以在您选择的IDE中配置。在Eclipse via Window -> Preferences -> Maven菜单中,尽管这可能必须在每个工作空间级别和新的Eclipse安装中完成。

或者在你的pom.xml中配置maven-dependency-plugin在一个单独的概要文件中,并根据需要运行它——将它保留在主构建中会导致在不需要源代码或java文档的构建节点上的构建时间(不必要的拉长(更不用说空间了)。最好在一些组织或部门的父pom.xml中配置,否则它将在不同的地方重复

我必须使用KeyStore来下载jar。如果您有任何与证书相关的问题,您可以使用以下方法:

mvn clean install dependency:sources -Dmaven.test.skip=true -Djavax.net.ssl.trustStore="Path_To_Your_KeyStore"

如果你想知道如何创建密钥库,这是一个非常好的链接: 在代理后使用Maven和SSL的问题

我认为每个插件都可以做到。请参阅Maven书中的这一章。

你可以配置依赖插件来下载源代码(尽管我自己没有尝试过:-)。

在我的情况下,“settings.xml”解决方案不起作用,所以我使用这个命令来下载所有的源代码:

mvn dependency:sources

你也可以将它与其他maven命令一起使用,例如:

mvn clean install dependency:sources -Dmaven.test.skip=true

要下载所有文档,使用以下命令:

mvn dependency:resolve -Dclassifier=javadoc

对于依赖级的源代码(pom.xml),您可以添加:

<classifier>sources</classifier>