java虚拟机
来源:互联网 发布:mac 虚拟机 天正 编辑:程序博客网 时间:2024/06/01 10:29
[TOC]
深入理解jvm虚拟机
第一章 编译openjdk7/8
编译openjdk
参考0:获取JDK源码
参考1:CentOS 6.5上编译安装OpenJDK7源码
参考2:Ubuntu 14.04.3 64位环境下OpenJDK7编译
参考3:CentOS下编译安装OpenJDK6过程遇到的问题
参考4:Linux环境编译安装OpenJDK
参考5:Centos7 配置jdk替换openjdk
- 准备软件
openjdk
ant
freetype
[jdk 需要到oracle注册]jdk-6u26-linux-x64-rpm.bin
- 安装ant(ant解压到了/opt目录下,并在path中创建了一个指向它的软连接) , jdk , fretype
ln -s /opt/apache-ant-1.9.7/bin/ant /usr/bin/ant
配置默认centos的默认jdk,详见参考3:
编译脚本(名字可随意openjdkbuild,然后source openjdkbuild)
unset CLASSPATHunset JAVA_HOMEexport LANG=Cexport ALT_BOOTDIR=/usr/java/jdk1.6.0_26export ANT_HOME=/opt/apache-ant-1.9.7export ALT_FREETYPE_LIB_PATH=/usr/local/libexport SKIP_DEBUG_BUILD=falseexport SKIP_FASTDEBUG_BUILD=trueexport DEBUG_NAME=debugexport ALT_FREETYPE_HEADERS_PATH=/usr/local/include/freetype2
- 下载openjdk7
$ hg clone http://hg.openjdk.java.net/jdk7u/jdk7u jdk7u $ cd jdk7u $ bash ./get_source.sh
- 编译完成
编译openjdk8
ubuntu 14.04下
bash ./configure --enable-debugmake CONF=linux-x86_64-normal-server-fastdebug
## Finished jdk (build time 00:03:26)----- Build times -------Start 2016-07-23 11:53:42End 2016-07-23 12:12:3600:00:28 corba00:13:40 hotspot00:00:18 jaxp00:00:24 jaxws00:03:26 jdk00:00:37 langtools00:18:54 TOTAL-------------------------Finished building OpenJDK for target 'default'
hadoop@hadoop:~/jdk8u/build/linux-x86_64-normal-server-fastdebug/jdk/bin$ ./java -versionopenjdk version "1.8.0-internal-fastdebug"OpenJDK Runtime Environment (build 1.8.0-internal-fastdebug-hadoop_2016_07_23_11_53-b00)OpenJDK 64-Bit Server VM (build 25.71-b00-fastdebug, mixed mode)
Centos6.8下
# yum install java-1.7.0-openjdk java-1.7.0-openjdk-devel
----- Build times -------Start 2016-07-24 03:30:24End 2016-07-24 03:48:5500:00:35 corba00:12:10 hotspot00:00:17 jaxp00:00:30 jaxws00:04:29 jdk00:00:30 langtools00:18:31 TOTAL-------------------------Finished building OpenJDK for target 'default'
第四章 虚拟机性能监控与故障处理工具
- JDK的命令行工具
- JDK的可视化工具
jdk bin目录下的命令工具,命令工具大多数是jdk\lib\tools.jar类库的一层包装而已。
JDK开发团队选择采用java代码来实现这些监测工具是特别有意思的:当应用程序部署到生产环境后,无论是直接接触物理服务器还是远程Telnet到服务器上都可能会受到限制。借助tools.jar类库里面的接口,我们可以直接在应用程序中实现功能强大的监控分析功能。
- tools.jar中的类库不属于java标准API,如果引入这个类库,就意味着你的程序只能运行与Hotspot(或者一些从Sun买了JDK源码的License的虚拟机,如IBM J9,BEA JRockit)上面,或者在部署程序时需要一起部署tools.jar
- [ ] P79 表4-1 Sun JDK监控和故障处理工具
疯狂java 16课
P135 4.3.3 与垃圾回收的附加选项
P182 -Xlint:fallthrough选项,java编译器会提示缺少break;的警告。
阅读全文
0 0
- Java虚拟机
- Java虚拟机
- Java虚拟机
- Java虚拟机
- Java虚拟机
- Java虚拟机
- Java虚拟机
- Java虚拟机
- Java虚拟机
- Java虚拟机
- JAVA虚拟机
- Java虚拟机
- Java虚拟机
- Java虚拟机
- java虚拟机
- java虚拟机
- Java虚拟机
- Java虚拟机
- CentOS7.2 编译clang3.5.2
- Java应用集群下的定时任务处理
- Linux环境高级编程
- Makefile
- 面试
- java虚拟机
- Word Excel PPT
- 使用dom4j去掉Xml文件中注释内容
- Linux Sqlite3
- .NET Entity Framework(EF)使用SqlQuery直接操作SQL查询语句或者执行过程
- 挑战程序设计竞赛(1)
- linux命令行程序
- 国内镜像站
- python cookbooks