是否有一种方法可以将maven配置为始终下载源代码和javadocs?每次指定-DdownloadSources=true -DdownloadJavadocs=true(这通常伴随着运行mvn compile两次,因为我忘记了第一次)变得相当乏味。
当前回答
不确定,但是你应该能够通过在settings.xml中设置一个默认的活动配置文件来做一些事情
See
参见http://maven.apache.org/guides/introduction/introduction-to-profiles.html
其他回答
打开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书中的这一章。
你可以配置依赖插件来下载源代码(尽管我自己没有尝试过:-)。
正如@xecaps12所说,最简单/有效的方法是更改Maven设置文件(~/.m2/settings.xml),但如果它是您的默认设置,您也可以这样设置
<profile>
<id>downloadSources</id>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
<properties>
<downloadSources>true</downloadSources>
<downloadJavadocs>true</downloadJavadocs>
</properties>
</profile>
在我的情况下,“settings.xml”解决方案不起作用,所以我使用这个命令来下载所有的源代码:
mvn dependency:sources
你也可以将它与其他maven命令一起使用,例如:
mvn clean install dependency:sources -Dmaven.test.skip=true
要下载所有文档,使用以下命令:
mvn dependency:resolve -Dclassifier=javadoc
不确定,但是你应该能够通过在settings.xml中设置一个默认的活动配置文件来做一些事情
See
参见http://maven.apache.org/guides/introduction/introduction-to-profiles.html
推荐文章
- 到底是什么导致了堆栈溢出错误?
- 为什么Android工作室说“等待调试器”如果我不调试?
- Java:路径vs文件
- ExecutorService,如何等待所有任务完成
- Maven依赖Servlet 3.0 API?
- 如何在IntelliJ IDEA中添加目录到应用程序运行概要文件中的类路径?
- getter和setter是糟糕的设计吗?相互矛盾的建议
- Android room persistent: AppDatabase_Impl不存在
- Java的String[]在Kotlin中等价于什么?
- Intellij IDEA上的System.out.println()快捷方式
- 在pom.xml中的<依赖>下的<作用域>是为了什么?
- 使用Spring RestTemplate获取JSON对象列表
- Spring JPA选择特定的列
- URLEncoder不能翻译空格字符
- Java中的super()