maven项目无法查看类库的源码
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了maven项目无法查看类库的源码相关的知识,希望对你有一定的参考价值。
一个Maven项目有两种类库,分别是JRE System Libaray和Maven Dependencies。
JRE System Libaray 一般有两种方法指定。
1、由pom.xml中的maven-compiler-plugin插件指定。
<plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>3.6.1</version> <configuration> <encoding>utf-8</encoding> <source>1.8</source> <target>1.8</target> </configuration> </plugin>
2、由项目的Properties指定。
Properties - Java Build Path > Libraries 改成Workspace default JRE
(其中这个Workspace default JRE一般在配置eclipse的时候,指定成本地JDK路径)
Properties - Java Compiler > Enable project specific settings 不勾选
一般情况下,maven项目总是会配置maven-compiler-plugin,否则项目时常会出现一些版本上的错误,
所以只考虑第一个方法。
第一种方法使用的JRE System Libaray,显示为JavaSE-1.8,
展开树状图,可以发现虽然指向的确实是本地Java的安装路径,但是仅仅只有jre目录下的jar文件。
所以需要为rt.jar指定源码和Javadoc
Properties - Java Build Path > Libraries - Java System Library [JavaSE-1.8] - rt.jar - Source attachment: 指定为本地JDK目录下的src.zip
Properties - Java Build Path > Libraries - Java System Library [JavaSE-1.8] - rt.jar - Javadoc location: 指定为https://docs.oracle.com/javase/8/docs/api/
Maven Dependencies
如果为Maven设置了链接速度较快的国内镜像站的话,很难出现无法查看maven依赖中的源码。
一旦出现了,右键项目 Maven - Download Sources 和 Download JavaDocs 即可。
此外,有些JDK的类是属于Java的核心组件,是不提供源码的,所以自然提示“Source not found”了,比如
sun.reflect.NativeMethodAccessorImpl
以上是关于maven项目无法查看类库的源码的主要内容,如果未能解决你的问题,请参考以下文章