Eclipse中无法查看java api的源代码

简述

1. Mac OS(10.8版本)自带了jdk1.6或者说java6,但是没有源代码。Mac OS自带的java 6是由苹果负责发布和更新的,跟Oracle的java 6略有不同,比如没有rt.jar,取而代之的是classes.jar 其他一些详细信息可参考 http://my.oschina.net/hmj/blog/79939

2. Oracle官方没有提供给Mac OS使用的java 6,但是从Orace官网可以下载java 7及源代码 ,Oracle官方提供了详细的安装指南,本文不做介绍。参见 http://www.java.com/zh_CN/download/help/mac_install.xml

3. Mac OS上java 6和java 7 可以共存,这个本人未测试,不做介绍,网上大把的帖子

4. 介绍从哪里下载java 6的源代码,并解决eclipse找不到源代码的问题The JAR file /System/.../classes.jar has no sourece attachment.

详细内容

1. 如何查询本机的java版本?

打开终端,输入java -version

yangdeMacBook-Air:~ feiniao$ java -version

java version "1.6.0_51"

Java(TM) SE Runtime Environment (build 1.6.0_51-b11-457-11M4509)

Java HotSpot(TM) 64-Bit Server VM (build 20.51-b01-457, mixed mode)

2. Mac 上的 Java 控制面板在何处?

请注意,只有安装了oracle的java 7 才会有控制面板,详细见Orace的官网。

单击屏幕左上角的 Apple 图标。

转到系统偏好设置

单击 Java 图标以访问 Java 控制面板。

3. 解决Eclipse的找不到源码的问题 The JAR file /System/.../classes.jar has no sourece attachment.

原因分析:

系统自带的jdk并没有源码包,需要从apple官网上下载

解决方法如下:

3.1 下载包含源代码java开发包

下载地址如下 https://developer.apple.com/downloads/index.action 开发包里面还有很多其他的东西,此处不介绍。

用你的apple ID 登录,第一次登录是提示进行注册,一路点下去就行了。到这个页面

现在最新版本的开发包如下:Java for OS X 2013-004 Developer Package, 下载后正常安装

网上看到的很多博客介绍的都是去http://connect.apple.com 下载,可是这个地址打不开,估计是以前的下载链接,已经失效了。

3.2 安装和配置

参考博客 http://www.blogjava.net/lsbwahaha/archive/2012/10/16/389692.html 执行以下步骤

1.sudo -s

2.cd /System/Library/Frameworks/JavaVM.framework/Home

3.ln -s /Library/Java/JavaVirtualMachines/1.6.0_35-b10-428.jdk/Contents/Home/docs.jar .

4.ln -s /Library/Java/JavaVirtualMachines/1.6.0_35-b10-428.jdk/Contents/Home/src.jar .

5.最后跟windows类似,在eclipse中用command + click点击查看一个类的源码。然后选“add source",选中上面的 src.jar 文件即可

注意上面的版本号要根据自己机子上软件版本号修改。其实按下tab就自己出来了。

我按照这个操作成功了,但上述的命令3 和 4 自认为不执行也可以,在Eclipse添加的源代码界面,直接找到执行软连接的源文件也可以,因为这些文件所有用户都有读权限。

这样操作可能是考虑到把源代码放到Mac OS本身的java目录吧。

另外

在终端运行type java 可以看到java是位于/usr/bin/java的,是个软连接

java -> /System/Library/Frameworks/JavaVM.framework/Versions/Current/Commands/java

3.3 JAVA_HOME的设置

参考这个博客 http://kennylee26.iteye.com/blog/1772638

4. 修改Eclipse中绑定的源代码

假如系统的java版本和源代码都进行了更新,此时需要重新绑定新版本的源代码,怎么操作?

还有一个类似的场景,在给android.jar指定源代码时,有可能选择了错误api版本的源代码,如何修改?

方法如下,附上截图一枚,步骤大致如下:

打开build patch,libraries标签页,找到classes.jar,选中,然后点击右边的Edit就出来配置页面了。

时间: 2024-10-19 11:46:54

Eclipse中无法查看java api的源代码的相关文章

阅读源代码的重要性:如厨师选食材,耍厨具——在Eclipse中怎样查看Java、Android源代码

首先,非常多人说,不会看jdk中的源代码就不叫学过Java.显然这是肯定的.打个例如:真正的厨师须要从食材的选取.加工.到最后的烹饪.装盘成型,甚至到最后给用户介绍食用方法等一整套流程走下来.而实际上非常多厨师仅仅是做了当中的一小部分,所以最多也仅仅能叫得上"炒菜的",而不是一个厨师.而非常多顶级餐厅强调选材,就是从源头上找到适合做某道菜的原料,甚至是反过来.得到一个供应链供应某种独特食材而专门为该材料设计某种烹饪技术. 这就是从头至尾的资源最大化利用.其体现创新及内功的地方贯穿整个流

阅读源码的重要性:如厨师选食材,耍厨具——在Eclipse中如何查看Java、Android源码

首先,很多人说,不会看jdk中的源码就不叫学过Java.显然这是肯定的.打个比方:真正的厨师需要从食材的选取.加工,到最后的烹饪.装盘成型,甚至到最后给用户介绍食用方法等一整套流程走下来.而实际上很多厨师只是做了其中的一小部分,所以最多也只能叫得上"炒菜的",而不是一个厨师.而很多顶级餐厅强调选材,就是从源头上找到适合做某道菜的原料,甚至是反过来,得到一个供应链供应某种独特食材而专门为该材料设计某种烹饪技术.这就是从头至尾的资源最大化利用,其体现创新及内功的地方贯穿整个流水线!特别的,

eclipse 中使用中文JAVA api文档

http://hi.baidu.com/danghj/item/7625a1be20946e43ba0e1202在eclipse中使用中文JAVA api文档Sun 官方的中文版 Java API 文档发布了,地址为: http://gceclub.sun.com.cn/download/Java_Docs/html_zh_CN.zip  , 下载后请参考如下步骤配合 eclipse3.1 使用

eclipse中如何查看一个android模拟器的内部文件

eclipse中如何查看一个android模拟器的内部文件,有时要在其中添加一个文件夹或是什么的,要手动的做这件事,而不能够用代码去完成时,就要用这个方法了. 1.首先,打开一个安卓模拟器. 2.这个时候,点击eclipse中DDMS图标,打开android模拟器的控件台. 3.在这里,你就能够看到这个模拟器了,同时它的一些状态,你也是可以看到的. 4.下面就点击右侧file explore就可以看到其中的文件系统了,在这里面,你就可以看到你要的文件了.

解决在eclipse中无法查看引用jar包的源码

第一步:下载JAD . jad官方地址的官方下载地址是: http://www.softpedia.com/get/Programming/Debuggers-Decompilers-Dissasemblers/JAD.shtml#download 第二步:下载JADClipse插件. 官方链接: http://nchc.dl.sourceforge.net/project/jadclipse/jadclipse3.3/3.3.0%20%28for%20Eclipse%20_%3D3.3M6%2

Eclipse中的普通Java项目如何部署到Tomcat中

我现在的做法: 1.在Eclipse中配置Tomcat时,选择创建Context文件,而不是server.xml,好处是文件可以随便命名,与虚拟目录一致(即xml中的属性path).Tomcat加载项目时,会扫描conf\Catalina\localhost目录下的所有xml文件,然后根据配置进行加载. conf\Catalina\localhost目录下xml文件.一般来说一个项目对应一个xml文件,如果你只想加载某个项目,则将该文件改为非xml即可. context file中xml的内容:

eclipse中如何将java项目转为java Web项目

有时候我们在eclipse中导入web项目时,系统当做一个java项目导入进来了.这时候在启动tomcat的服务器时无法找到该项目. 那么可以通过如下操作来将java项目转换为web项目. 1. 选择该项目右键-> properties. 2. 在弹出的窗口中找到Project Facets,然后单击 Convert to faceted form... 3. 勾选上 Dynamic Web Module,Java默认为勾选.然后找到右边的Runtimes选项卡,参见图. 4. 勾选runtim

在NDK C++线程中如何调用JAVA API

from://http://www.eoeandroid.com/thread-150995-1-1.html 在NDK中创建的线程中, 只允许调用静态的Java API. 当在线程中调用env->FindClass(), 系统就会发出异常.http://android.wooyd.org/JNIExample中有较详细的调用说明. 示例代码如下: JAVA 代码:public class simple_test extends Activity {    ...    public stati

JAVA基础学习--Eclipse中导入一个java文件

在编写java工程时,可能会用到别的已经成熟的java类文件,那么如何才能将目标类文件导入到工程中呢, 以下Operation.java为例. 现一个java文件源码. 1.打开eclipse,“File”->"New"->"Java Project",在Project Name中输入工程名,如:com.linwu.其他参数使用默认数据.点击Finish 2.在工程com.linwu下的Src,点击右键,选择New->Package,在name这一