使用Maven下载依赖包的时候, 默认是不会下载源码包的,但是有时候, 需要Debug代码,或是看看依赖项的源码的写法, 就需要下载源码包了。

这里以 Apache 的 commons-text 为例, 在Maven中添加如下依赖配置:

org.apache.commons

commons-text

1.10.0

在命令行中切换到pom.xml 的路径, 使用 mvn compile 编译项目的时候会下载依赖项, 下载完成后,在本地库的文件中可以看到, 依赖包的目录中是不包含源码文件的。如下图所示:

但是如果是在Eclipse中,使用Maven更新项目的时候,会把源码包下载下来。

Eclipse 中Maven更新项目的方式是: 右键单击项目, 选择Maven , 选择Update Project …, 如下图:

执行完成之后的目录结果如下:

可以看到, 在Eclipse 中使用Maven 更新项目之后, 源码包被下载下来了。

Eclipse 默认下载源码包的原因

Eclipse 中为什么会默认下载源码包呢? 从Eclipse 中Maven的设置就可以看出端倪。

选择Windows菜单, 点击 “Preference”, 在左边导航栏找到Maven , 可以看到一个选项被勾选了: Download Artifact Sources (下载构建的源码)。如下图所示:

从这里可以得到一些启示, 是否下载源码包, 是可以通过Maven的命令选项进行控制的。

设置下载源码的方式

设置下载源码包, 可以又多种方式。

Maven命令行选项

mvn dependency:sources

mvn dependency:sources -DdownloadSources=true -DdownloadJavadocs=true

上面的两个命令都可以实现下载项目的所有依赖包及其源码包。

Eclipse 设置下载依赖包

在 Windows > Preferences > Maven, 勾选 Download Artifact Sources ,则在pom.xml添加依赖之后, 通过Eclipse触发下载依赖包的同时,也会将源码包下载下来。

配置 settings.xml

还可以通过配置 Maven的设置文件 settings.xml, 在该文件中添加如下内容:

downloadSources

true

true

downloadSources

完整的文件类似:

下载某个依赖的源码包

下载项目的所有依赖包,对于本地空间来说,有时候有点浪费, 毕竟不是每个源码包都会使用, 如果只想下载某一个依赖包的源码包要怎么操作呢? Eclipse 中提供了这个功能。 找到项目的Maven Dependecies , 选取对应的jar,右键单击 Maven > download sources, 如下图示:

好文推荐

评论可见,请评论后查看内容,谢谢!!!
 您阅读本篇文章共花了: