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


当前回答

对于intellij用户,在pom.xml文件中,右键单击任意位置并选择Maven ->下载源代码和文档。

其他回答

不确定,但是你应该能够通过在settings.xml中设置一个默认的活动配置文件来做一些事情

See

参见http://maven.apache.org/guides/introduction/introduction-to-profiles.html

对于intellij用户,在pom.xml文件中,右键单击任意位置并选择Maven ->下载源代码和文档。

打开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中配置,否则它将在不同的地方重复

我使用Maven 3.3.3,无法获得默认配置文件在用户或全局设置.xml文件中工作。

作为一种变通方法,您还可以在pom.xml文件中添加一个额外的构建插件。

<properties>
    <maven-dependency-plugin.version>2.10</maven-dependency-plugin.version>
</properties>
<build>
    <plugins>
        <!-- Download Java source JARs. -->
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-dependency-plugin</artifactId>
            <version>${maven-dependency-plugin.version}</version>
            <executions>
                <execution>
                    <goals>
                        <goal>sources</goal>
                    </goals>
                </execution>
            </executions>
        </plugin>
    </plugins>
</build>

正如@xecaps12所说,最简单/有效的方法是更改Maven设置文件(~/.m2/settings.xml),但如果它是您的默认设置,您也可以这样设置

<profile>
  <id>downloadSources</id>
  <activation>
    <activeByDefault>true</activeByDefault>
  </activation>
  <properties>
      <downloadSources>true</downloadSources>
      <downloadJavadocs>true</downloadJavadocs>
  </properties>
</profile>