导航:首页 > 源码编译 > jdk7源码下载

jdk7源码下载

发布时间:2023-09-16 22:27:22

Ⅰ maven 在eclipse中,如何下载jdk源码

只有中央仓库,官方仓库或地方仓库中有提供才可能用maven下载,java的jdk目前好像并没有提供
maven的下载,初非自己有搭建的仓库才可以。maven目接只提供一些jar包下载与maven插件下载

Ⅱ 如何查看java源码中的native方法源码

下载JDK源代码啊,openJDK上有完整的JDK源代码,JDK源代码由C++、Java、C、汇编 这四种语言组成。JVM主体是C++写的,JNI部分是C,工具类是Java写的,JVM里混有汇编代码。路径:openjdk-7-fcs-src-b147\jdk\src\share\native\java\lang\System.c 找到这个
/* Only register the performance-critical methods */
static JNINativeMethod methods[] = {
{"currentTimeMillis", "()J", (void *)&JVM_CurrentTimeMillis},
{"nanoTime", "()J", (void *)&JVM_NanoTime},
{"array", "(" OBJ "I" OBJ "II)V", (void *)&JVM_ArrayCopy},
};

方法的实现应该在JVM部分,路径openjdk-7-fcs-src-b147\hotspot\src\share,不同的操作系统实现不一样,应该是在对应的操作系统的包下

Ⅲ 如何在linux上安装jdk7

卸载OpenJDK
rpm -qa | grep java
rpm -e --nodeps java-1.6.0-openjdk-1.6.0.0-1.50.1.11.5.el6_3.x86_64 rpm -e --nodeps java-1.7.0-openjdk-1.7.0.9-2.3.4.1.el6_3.x86_64 rpm -e --nodeps tzdata-java-2012j-1.el6.noarch

jdk下载官方网址:http:// www .oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html
输入命令:wget http:// 211.149.198.47/data/main/jdk-7u7-linux-i586.tar.gz 下载jdk

输入命令: ll 可以查看当前目录下存在文件jdk-7u7-linux-i586.tar.gz ,然后在当前目录下解压源码包,输入命令:tar -zxvf jdk-7u7-linux-i586.tar.gz

输入命令: ll 可以查看当前目录下存在目录jdk1.7.0_07,然后将其移动到/usr/local/目录下,并重命名为 jdk7,输入命令:mv jdk1.7.0_07 /usr/local/jdk7

下面我们来设置jdk的环境变量这里彩全局设置方法,就是来修改 /etc/profile,它是所有用户的共用的环境变量输入命令:vi /etc/profile然后在打开的文件末尾添加如下内容:JAVA_HOME=/usr/local/jdk7JRE_HOME=/usr/local/jdk7/jrePATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATHCLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/libexport JAVA_HOME JRE_HOME PATH CLASSPATH

使环境变量立即生效,输入命令:source /etc/profile
检验是否安装成功
输入命令:java #检测jdk bin环境
接着输入:javac #检测jdk classpath环境
成功,你会看到如下java命令参数使用说明界面;

当前我们输入以上的命令后,可能会报如下的错误:bash: /usr/local/jdk7/bin/java: /lib/ld-linux.so.2: bad ELF interpreter: 没有那个文件或目录是因为64位系统中安装了32位程序,而且我当前使用的正是64位的linux版本解决方法:yum install glibc.i686
我是在安装了上面的 glibc.i686 等相关的包后,就可以正常执行 java,javac等命令了。并没有安装以下的包 重新安装以后还有如下类系错误 再继续安装包 error while loading shared libraries: libstdc++.so.6: cannot open shared object file: No such file or directoryyum install libstdc++.so.6
当然,如果你安装的是64位的jdk,就不会报该错误了。

Ⅳ java:哪里能看到JDK的源代码

  1. 我认为你说的是Java的源码,JDK是一个编译

  2. Java源码在Javajdk1.8.0_60src.zip中

  3. 如果你要的真的是Jdk的源码的话,Orccle官网应该会有

Ⅳ 如何查看JDK源码

在Eclipse中查看JDK类库的源代码方法设置:
1.点 “window”-> "Preferences" -> "Java" -> "Installed JRES";
2.此时"Installed JRES"右边是列表窗格,列出了系统中的 JRE 环境,选择JRE,然后点边上的 "Edit...", 会出现一个窗口(Edit JRE);
3.选中rt.jar文件的这一项:“c:\program files\java\jre_1.5.0_06\lib\rt.jar”
点 左边的“+” 号展开它;
4.展开后,可以看到“Source Attachment:(none)”,点这一项,点右边的按钮“Source Attachment...”, 选择JDK目录下的 “src.zip”文件;
5.一路点"ok",结束。

dt.jar是关于运行环境的类库,主要是swing的包
tools.jar是关于一些工具的类库
rt.jar包含了jdk的基础类库,也就是在java doc里面看到的所有的类的class文件

使用方法:
可以在 Java 源代码编辑器或代码片段编辑测试窗中选择类型、方法或字段的名称,然后对元素的定义打开编辑器。
在 Java 编辑器中,选择类型、方法或字段的名称。也可以仅仅在名称中单击一次。
执行下列其中一项操作:
1.从菜单栏中,选择浏览 > 打开声明;
2.从编辑器的弹出菜单中,选择打开声明;
3.按 F3键,迁移到一个class文件拿去;
4、class文件画面会有一个“关联源代码”按钮,点击这个按钮,然后从系统文件选择jdk下的src.zip文件。
这样就可以直接看到源码了。

Ⅵ openjdk和oraclejdk有什么区别吗

首先要先明确之间,以及OpenJDK 6、OpenJDK 7、OpenJDK 7u和OpenJDK 8等项目之间是什么关系,这有助于确定接下来编译要使用的JDK版本和源码分支。
从前面介绍的Java发展史中我们了解到OpenJDK是Sun在2006年末把Java开源而形成的项目,这里的“开源”是通常意义上的源码开放形式,即源码是可被复用的,例如IcedTea、UltraViolet都是从OpenJDK源码衍生出的发行版。但如果仅从“开源”字面意义(开放可阅读的源码)上看,其实Sun自JDK 1.5之后就开始以Java Research License(JRL)的形式公布过Java源码,主要用于研究人员阅读(JRL许可证的开放源码至JDK 1.6 Update 23为止)。把这些JRL许可证形式的Sun/OracleJDK源码和对应版本的OpenJDK源码进行比较,发现除了文件头的版权注释之外,其余代码基本上都是相同的,只有字体渲染部分存在一点差异,Oracle JDK采用了商业实现,而OpenJDK使用的是开源的FreeType。当然,“相同”是建立在两者共有的组件基础上的,Oracle JDK中还会存在一些Open JDK没有的、商用闭源的功能,例如从JRockit移植改造而来的Java Flight Recorder。预计以后JRockit的MissionControl移植到HotSpot之后,也会以Oracle JDK专有、闭源的形式提供。
Oracle的项目发布经理Joe Darcy在OSCON 2011上对两者关系的介绍也证实了OpenJDK 7和Oracle JDK 7在程序上是非常接近的,两者共用了大量相同的代码(如下图,注意图中提示了两者共同代码的占比要远高于图形上看到的比例),所以我们编译的OpenJDK,基本上可以认为性能、功能和执行逻辑上都和官方的Oracle JDK是一致的。
Dalvik 与java虚拟机:
1.java虚拟机基于栈。 基于栈的机器必须使用指令来载入和操作栈上数据,所需指令更多更多 .
而dalvik虚拟机是基于寄存器的:java虚拟机运行的是java字节码。
(java类会被编译成一个或多个字节码.class文件,打包到.jar文件中,java虚拟机从相应的.class文件和.jar文件中获取相应的字节码)2.Dalvik和Java之间的另外一大区别就是运行环境——Dalvik经过优化,允许在有限的内存中同时运行多个虚拟机的实例OpenJDK :
[root@localhost ~]# java -version
java version "1.6.0_39"
OpenJDK Runtime Environment (IcedTea6 1.13.11) (rhel-1.13.11.0.el5_11-x86_64)OpenJDK 64-Bit Server VM (build 23.25-b01, mixed mode)oracle jdk:
java version "1.8.0_91"
Java(TM) SE Runtime Environment (build 1.8.0_91-b14)Java HotSpot(TM) 64-Bit Server VM (build 25.91-b14, mixed mode)OpenJDK下载:
http://openjdk.java.net/install/index.htmlJDK 8:yum install java-1.8.0-openjdk
JDK 7:
yum install java-1.7.0-openjdk
JDK 6:yum install java-1.6.0-openjdk
1. HotSpot历史
SUN的JDK版本从1.3.1开始运用HotSpot虚拟机, 2006年底开源,主要使用C++实现,JNI接口部分用C实现。
HotSpot是较新的Java虚拟机,用来代替JIT(Just in Time),可以大大提高Java运行的性能。
Java原先是把源代码编译为字节码在虚拟机执行,这样执行速度较慢。而HotSpot将常用的部分代码编译为本地(原生,native)代码,这样显着提高了性能。
HotSpot JVM 参数可以分为规则参数(standard options)和非规则参数(non-standard options)。
规则参数相对稳定,在JDK未来的版本里不会有太大的改动。
非规则参数则有因升级JDK而改动的可能。
规则和非规则参数这里不做介绍了,网上资料很多。
2.HotSpot基础知识
HotSpot包括一个解释器和两个编译器(client 和 server,二选一的),解释与编译混合执行模式,默认启动解释执行。
编译器:java源代码被编译器编译成class文件(字节码),java字节码在运行时可以被动态编译(JIT)成本地代码(前提是解释与编译混合执行模式且虚拟机不是刚启动时)。
解释器: 解释器用来解释class文件(字节码),java是解释语言(书上这么说的)。
server启动慢,占用内存多,执行效率高,适用于服务器端应用;client启动快,占用内存小,执行效率没有server快,默认情况下不进行动态编译,适用于桌面应用程序。
由-XX:+RewriteFrequentPairs参数控制 client模式默认关闭,server模式默认开启在jre安装目录下的lib/i386/jvm.cfg 文件下。
java -version
Java HotSpot(TM) Client VM (build 14.3-b01, mixed mode, sharing)mixed mode 解释与编译 混合的执行模式 默认使用这种模式java -Xint -version
Java HotSpot(TM) Client VM (build 14.3-b01, interpreted mode, sharing)interpreted 纯解释模式 禁用JIT编译
java -Xcomp -version
Java HotSpot(TM) Client VM (build 14.3-b01, compiled mode, sharing)compiled 纯编译模式(如果方法无法编译,则回退到解释模式执行无法编译的方法)3.动态编译
动态编译(compile ring run-time),英文称Dynamic compilation;Just In Time也是这个意思。
HotSpot对bytecode的编译不是在程序运行前编译的,而是在程序运行过程中编译的。
HotSpot里运行着一个监视器(Profile Monitor),用来监视程序的运行状况。
java字节码(class文件)是以解释的方式被加载到虚拟机中(默认启动时解释执行)。 程序运行过程中,那一部分运用频率大,那些对程序的性能影响重要。对程序运行效率影响大的代码,称为热点(hotspot),HotSpot会把这些热点动态地编译成机器码(native code),同时对机器码进行优化,从而提高运行效率。对那些较少运行的代码,HotSpot就不会把他们编译。
HotSpot对字节码有三层处理:不编译(字节码加载到虚拟机中时的状态。也就是当虚拟机执行的时候再编译),编译(把字节码编译成本地代码。虚拟机执行的时候已经编译好了,不要再编译了),编译并优化(不但把字节码编译成本地代码,而且还进行了优化)。
至于那些程序那些不编译,那些编译,那些优化,则是由监视器(Profile Monitor)决定。
4.为什么不静态编译那?
为什么字节码在装载到虚拟机之前就编译成本地代码那?
动态编译器也在许多方面比静态编译器优越。静态编译器通常很难准确预知程序运行过程中究竟什么部分最需要优化。
函数调用都是很浪费系统时间的,因为有许多进栈出栈操作。因此有一种优化办法,就是把原来的函数调用,通过编译器的编译,改成非函数调用,把函数代码直接嵌到调用出,变成顺序执行。
面向对象的语言支持多态,静态编译无效确定程序调用哪个方法,因为多态是在程序运行中确定调用哪个方法。
jdk 1.9 等价JDK9 J2SE9 JAVA9
jdk 1.8 等价JDK8 J2SE8 JAVA8
jdk 1.7 等价JDK7 J2SE7 JAVA7
jdk 1.6 等价JDK6 J2SE6 JAVA6
jdk 1.5 等价JDK5 J2SE5 JAVA5
jdk 1.4 等价J2SE1.4
jdk 1.3 等价J2SE1.3
jdk 1.2 等价J2SE1.2
jdk 1.1
openjdk源码下载:
Oracle JDK只发布二进制安装包,而OpenJDK只发布源码复制代码
获取OpenJDK源码有两种方式:
第一种方式:
下载OpenJDK7u的源代码:
hg clone http://hg.openjdk.java.net/jdk7u/jdk7u-devcd jdk7u-dev
chmod 755 get_source.sh
./get_source.sh
下载OpenJDK8u的源代码:
hg clone http://hg.openjdk.java.net/jdk8u/jdk8u-devcd jdk8u-dev
./get_source.sh
注意:这是最直接的方式,从版本管理中看变更轨迹比看Release Note效果更好。但不足之处是速度太慢,虽然代码总容量只有300 MB左右,但是文件数量太多,在笔者的网络下全部复制到本地需要数小时。
第二种方式,即直接下载官方打包好的源码包
读者可以从Source Bundle Releases页面(地址:http://jdk7.java.net/source.html)取得打包好的源码,到本地直接解压即可。
一般来说,源码包大概一至两个月左右会更新一次,虽然不够及时,但比起从Mercurial复制代码的确方便和快捷许多。
笔者下载的是OpenJDK 7 Update 6 Build b21版源码包,2012年8月28日发布,大概99MB,解压后约为339MB。
备注:推荐在linux平台或者mac平台上面编译jdk

Ⅶ java学习下载源码网站哪个最好用

你好, ZhiIsWiner

CSDN.成立时间比较早。下载需要财富值。刚注册可以有财富的。
开源中国。成立时间相对CSDN较晚。代码是免费的,可以直接复制。或者下载。

希望能帮到你。

阅读全文

与jdk7源码下载相关的资料

热点内容
android录屏工具 浏览:838
成都互动直播系统源码 浏览:953
usb蓝牙android 浏览:405
服务器显示error1什么意思 浏览:708
python代码精简 浏览:457
文件加密了怎么找到了 浏览:193
jellyfin插件怎么选择主服务器 浏览:836
asp用户注册源码 浏览:48
什么是照片压缩文件 浏览:392
java调用js代码 浏览:979
昆山市民app怎么修改身份信息 浏览:779
php登陆次数 浏览:744
python字符转成数字 浏览:822
海川用的是什么服务器 浏览:376
口才是练出来的pdf 浏览:458
云服务器哪个公司性价比高 浏览:517
源码论坛打包 浏览:558
php怎么做成word 浏览:692
python批量生成密钥 浏览:492
程序员要不要考社区人员 浏览:150