从Maven仓库获取源JAR
有没有人有任何想法,如果你可以在Maven仓库中找到源JAR文件?
Maven Micro-Tip:获取源代码和Javadocs
在IDE中使用Maven时,经常会发现需要IDE来解决源代码和Javadoc以满足库依赖性。 有一个简单的方法来实现这一目标。
mvn dependency:sources
mvn dependency:resolve -Dclassifier=javadoc
第一个命令将尝试下载您的pom文件中每个依赖关系的源代码。
第二个命令将尝试下载Javadocs。
Maven在这里是图书馆打包者的摆布。 所以他们中的一些人不会有源代码打包,其中许多人不会有Javadocs。
如果你有很多的依赖关系,使用包含/排除来获取特定的工件也是一个好主意,下面的命令将例如只下载具有特定artifactId的依赖关系的源代码:
mvn dependency:sources -DincludeArtifactIds=guava
资料来源:http://tedwise.com/2010/01/27/maven-micro-tip-get-sources-and-javadocs/
文档:https://maven.apache.org/plugins/maven-dependency-plugin/sources-mojo.html
从命令行运行Eclipse时( mvn eclipse:eclipse
)
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-eclipse-plugin</artifactId>
<configuration>
<downloadSources>true</downloadSources>
<downloadJavadocs>true</downloadJavadocs>
</configuration>
</plugin>
</plugins>
</build>
如果一个项目创建了一个jar项目源并将其部署到一个maven仓库,那么你会发现它:)
仅供参考,源文件通常由maven-source-plugin创建。 这个插件可以将项目的主要源或测试源打包到jar文件中,并且如配置源插件中所述:
(...)如果生成的jar文件是主要的源文件,它将通过finalName
加上“-sources”的值来命名。 否则,如果它是测试源,它将是finalName
加“ finalName
-sources”。
描述工件(“-sources”或“-test-sources”)的附加文本称为分类器。
要声明使用分类器的工件的依赖关系,只需添加<classifier>
元素即可。 例如:
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate</artifactId>
<version>3.2.7.ga</version>
<classifier>sources</classifier>
</dependency>
请注意,您通常不会这样做,大多数IDE都会提供支持以从主工件下载源(和/或JavaDoc),而不会明确声明它们依赖于它们。
最后,还要注意一些存储库搜索引擎允许使用分类器搜索工件(至少Nexus用于高级搜索)。 以此搜索为例。
链接地址: http://www.djcxy.com/p/29739.html上一篇: Get source JARs from Maven repository
下一篇: Is there are way to install maven dependencies before maven attempts to resolve them?