本文正在参加「Java主题月 - Java Debug笔记活动」,详情查看<活动链接>
问题
如果想从 Maven 仓库中获取 Jar 源代码,有没有什么好的方法?
回答
回答1
Maven Micro-Tip:获取源代码和 Javadocs
在 IDE 中使用 Maven 时,通常会发现 IDE 需要解析依赖库的源代码和 Javadocs。有一个简单的方法可以实现。
mvn dependency:sources
mvn dependency:resolve -Dclassifier=javadoc
第一个命令将尝试下载 pom 文件中每个依赖项的源代码。
第二个命令将尝试下载 Javadocs。
Maven 受限于依赖包,其中一些包将没有提供源代码,并且没有 Javadocs。
如果您有很多依赖关系,那么使用包含/排除来获取特定包可能也是一个不错的方法,例如,以下命令将仅下载具有特定 artifactId 的依赖关系的源代码:
mvn dependency:sources -DincludeArtifactIds=guava
文档:maven.apache.org/plugins/mav…
回答2
配置和运行 maven-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>
回答3
如果一个项目有项目源代码编译为 jar 包,并将其部署到 Maven 仓库,那么你可以这么做。
代码 artifacts 通过 maven-source-plugin 创建,该插件会将测试代码放到jar中存档。
用来描述artifacts (此处为“ -sources”或“ -test-sources”)的附加文本称为分类器。
要声明对使用分类器的工件的依赖,只需添加 <classifier> 元素。例如:
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate</artifactId>
<version>3.2.7.ga</version>
<classifier>sources</classifier>
</dependency>
翻译内容来源Stack Overflow:stackoverflow.com/questions/2…