2.如何使用导航和取得进步


在黑客日和讲习班开始之前我需要做些什么呢

来之前你应该准备好你的笔记本电脑并搭建好当天需要的环境

  • 检查硬件要求/操作系统/软件要求
  • 下载支撑软件
  • 搭建或者下载虚拟机
  • 搭建或者下载Docker镜像
  • 检查虚拟机和Docker镜像是否正常工作
  • 检查OpenJDK是否正常工作

在“参加黑客日和讲习班之前应该如何准备”中查看对于以上几点的详细解释。如果这个对你来说不适用或者你已经完成了这些工作那么请看下面的部分。
活动当天如何在你的机器上搭建环境
看完“参加黑客日和讲习班之前应该如何准备”之后请看“活动当天如何在你的机器上搭建环境”。如果这个对你来说不适用或者你已经完成了这些工作那么请看下面的部分。

  • 我是学生/初学者对Adopt OpenJDK一点都不熟悉希望学习以前从未参加过OpenJDK黑客日我该如何开始
    请看“初等级别”中的步骤
  • 我是学生/专业人士对Adopt OpenJDK不是很熟悉以前参加过OpenJDK黑客日我该从哪里继续
    请看“中等级别”中的步骤
  •  我是专家/专业人士对OpenJDK黑客日很熟悉对相关技术/Java/JVM/OpenJDK非常熟悉我能从你们这里得到哪些好处请看“高等级别”中的步骤

我在家有充裕的时间和带宽我该如何利用或者说参加完黑客日和讲习班后我应该做什么。
请看“利用你的时间去学习的最好方法”。

我有一些想法而且我希望分享并且希望对这本书有所贡献
请看“如何对这本书做出贡献”

2.1. 初等级别


我是学生/专业人士对Adopt OpenJDK不是很熟悉以前参加过OpenJDK黑客日我该如何开始
“Adopt OpenJDK – 入门指南” – 简单地阅读一下这些网页和子网页当你在家的时候或者空闲的时候认真阅读。
“虚拟机” – 浏览这些网页并根据带宽和时间来建立和下载虚拟机。或者向辅助商请在相关网页查看更详细的说明索取虚拟机镜像。
“建立你自己的OpenJDK”  – 浏览这个部分并用你通过前面几个步骤中搭建好的虚拟机来搭建不同版本的OpenJDK。
接下来请看“中等级别”

2.2. 中等级别


我是学生/专业人士对Adopt OpenJDK不是很熟悉以前参加过OpenJDK黑客日我该从哪里继续

•“搭建你自己的虚拟机”或“搭建你自己的轻量级虚拟机”然后看“在Host 与 Guest VM 之间共享文件”最后看“源代码”。
•如果想获取OpenJDK目录和文档结构的概览请看“各个OpenJDK的文档结构”
•请先试一试“改变Random.java类”。
•在进行下一步之前请先阅读“如何使用JTReg… – JAVA回归测试工具”来了解JAVA的回归测试框架
•接着试试“改变StringBuffer.java类来添加一个新的方法”
•看看“OpenJDK项目”和“Adopt OpenJDK项目”
•“测试JAVA早期项目”
•“OpenJDK项目代码分析”和“OpenJDK代码覆盖率”有趣
•“补丁 – 如何创建和提交他们” – 如何创建补丁和提交给OpenJDK小组
•看一下“OpenJDK漏洞数据库 (JIRA)”
•“OpenJDK9 – jimage ”有趣
•最后请看“高等级别”

2.3.高等级别


我是专家/专业人士对OpenJDK黑客日很熟悉对相关技术/Java/JVM/OpenJDK非常熟悉我能从你们这里得到哪些好处
•”构建性能优化的命令行参数”
•好好看看“高级阶段”吧。
•最后如果你已经完成了上述步骤看下“目录”看看还有哪些你没有看的。

2.4. 有空有带宽


我在家有充裕的时间和带宽我该如何利用或者说参加完黑客日和讲习班后我应该做什么。
好好看看下面这几个部分吧
•“Adopt OpenJDK 入门指南”
•“虚拟机”
•“二进制”
如果你完成了看看“目录”然后还有没有你没有看过的

2.5. 如何对本书做出贡献


通过GitBook


在Gitbook.com上建立账户申请成为Adopt OpenJDK GitBook的合作者
一些说明文档和如何安装GitBook应该会对你有帮助

通过GitHub


1.建立一个分支浏览这个网站来看如何建立分支

https://github.com/neomatrix369/adoptopenjdk-getting-started-kit#fork-destination-box
2.把你的版本复制到你的工作空间里

git clone git@github.com:{YOUR_GITHUB_ACCOUNT}/adoptopenjdk-getting-started-kit.git

3.添加Upstream

git remote add –track master upstream git://github.com/neomatrix369/adoptopenjdk-getting-started-kit.git
现在你就可以修改原是仓库中你的分支了 git fetch upstream和 git merge upstream/master

1.提交修改后的文件
git add
git commit -am "meaningful description about your changes"
2.推送文件 git push
3.建立一个pull请求在GitHub中查看你的仓库https://github.com/{YOUR_GITHUB_ACCOUNT}/adoptopenjdk-getting-started-kit/pulls点击New Pull Request按钮来新建

如何确认本书的修改


我们在repo的根文件夹中有两个脚本可以产生哪里发生了改变的标记页像这样。
生成哪里发生了改变的标记的脚本叫做 whatsChanged.sh和whatsChangedForAllLanguages.sh
请随意改进以便使它能够持续不断地发挥它的作用甚至变得更好。

2.6. 参加黑客日和讲习班之前应该如何准备


如果你遇到问题请参考“Known issu”如果在那里无法找到解决方法请“Contribute to this book”或者“报告给我们”。
硬件要求/操作系统/软件要求
以下是创建和使用虚拟机的硬件要求
64-bit CPU running (> 2.0 Ghz)
64-bit OS (Linux, MacOS, Windows)
20-25 GB free disk space minimum
4-8 GB RAM minimum
平台/软件要求
VirtualBox installed
Java 7 and 8 installed*
Vagrant installed
Docker installed 可选
Boot2Docker installed可选
*取决于你是在本地构建OpenJDK 还是在虚拟机或者Vagrant或者Docker你需要将它下载到虚拟机或者本机中
其他要求:
了解Java
了解如何创建系统, maven, git, 等…
Linux和bash的一些经验
关于OpenJDK的一些知识
关于vagrant (可选,除非你将要使用这项技术来工作)的一些经验
docker(可选,除非你将要使用这项技术来工作)的一些经验
下载支撑软件
VirtualBox (用来载入虚拟机): https://www.virtualbox.org/
Java (安装在虚拟机中): http://www.oracle.com/technetwork/java/javase/
Vagrant (用来启动vagrant boxes) https://www.vagrantup.com/
可选
Docker: https://docs.docker.com/installation/#installation
Boot2Docker: http://boot2docker.io/
IntelliJ: https://www.jetbrains.com/idea/
Eclipse: https://eclipse.org/
Netbeans: https://netbeans.org/
SonarQube: http://www.sonarqube.org/
下载和复制做好的虚拟机
下载下列虚拟机 – Ubuntu 12.04 VM with OpenJDK9 (jigsaw) with Sources and IntelliJ:
https://copy.com/tA0l06zDrJNNDKVL
帐号: openjdk
密码: openjdk123
你也可以通过移动硬盘将虚拟机镜像拷贝到本地磁盘
加载镜像可以通过  File | Import Appliances…  VirtualBox main menu.
在本地或者云中创建OpenJDK
在“Building OpenJDK 9”中查看如何在运行在你电脑甚至是云里的操作系统如Linux, MacOS或Windows中构建OpenJDK
验证安装和环境
在你的本机或者虚拟机中进入openjdk*文件夹然后运行以下命令见Build OpenJDK 9:
*openjdk – sources/jdk9 or dev/jdk9_dev
作为虚拟机你可以下载或复制Vagrant boxes或Docker image已经有创建好的镜像你可以在讲习班继续使用无需修改基于代码的更新并重新编译。
bash get_source.sh
因此请不要在vagrant box或Docker containers虚拟机中运行上面的命令。因为这会导致等待镜像完成编译或者有时候编译中断这会需要大量的投入和修复工作。
所以应该运行以下两段命令:
bash configure –disable-warnings-as-errors
make images
注请同样避免 ‘make clean images’ 命令除非真的必要否则将需要等待到整个编译过程完成。
如果以上命令中的任何一个失败那么OpenJDK环境
最后
完成后请进入“How to navigate and make progress ? ”顺着流程进入下一步。
对于那些能够顺利完成以上步骤并且想了解Vagrant和Docker脚本的有经验的用户可以查看“ Additional pre-hackday actions for experienced attendees”。

2.7. 有经验的参加者的额外动作


建立你自己的虚拟机
注你需要很好的带宽来下载文件以及大量的时间来创建。不是通过wifi连接完成。
“Build your own VM ”
“Build your own light-weight VM”

检查虚拟机
将虚拟机载入VirtualBox
启动虚拟机
在虚拟机中运行一些程序
关闭虚拟机

下载/复制Docker镜像
一旦镜像下载完成可以在不同的设备之间复制详情见”Copy Images”
或者
创建镜像
在Docker images下的“Build Images”里查看

检验安装和环境
启动虚拟机或者Docker Container进入jdk8或jdk9所在文件夹运行以下命令
bash configure
make clean images.
如果他们中的任何一个运行失败了就说明环境没有设置正确或者创建过程在OpenJDK master中中断

最后
完成后请进入“How to navigate and make progress ? ”顺着流程进入下一步。

2.8. 当天如何设置你机器中的环境


注如果你遇到问题请参考“Known issu”如果在那里无法找到解决方法请“Contribute to this book”或者“报告给我们”
在本地或者云中创建OpenJDK
注除非你有很高的网络带宽否则请不要尝试在本地创建OpenJDK
你无需复制任何东西只需要在云服务提供商如亚马逊或其他提供者那里注册一下。
实例化一个运行你选择的系统的box然后按照“Adopt OpenJDK Build Instruction”中提到的步骤我们推荐Linux发行版如Ubuntu或Fedora或Centos
在Virtualbox虚拟机中创建OpenJDK
将下列文件从移动设备中复制到你的机器
VirtualBox for Ubuntu/[binaries]
or
VirtualBox for MacOS/[binaries]
or
VirtualBox for Windows/[binaries]
OpenJDK VM Images/OpenJDK9_Jigsaw_vm
or
OpenJDK VM Images/OpenJDK VM with no IDE support
or
OpenJDK VM Images/OpenJDK VM with Eclipse
OpenJDK VM Images/OpenJDK VM passwords.txt

安装VirtualBox
运行VirtualBox Oracle VirtualBox
导入各自的虚拟机不要创建新的VirtualBox设置
启动虚拟机
最后进入“Building OpenJDK 9”这个章节
在Vagrant script创建的虚拟机中创建OpenJDK
将下列文件从移动设备中复制到你的机器: Vagrant/. Vagrant/openjdk-vagrant-images Vagrant/[binaries]
安装Vagrant并确保其在各自的环境中正常工作
解压Vagrant文件夹中的.tar.gz文件
阅读README.md来了解各个脚本文件是做什么的
确定之后使用这些脚本
注不要通过执行Vagrantfile来创建镜像 – 这需要很长时间已经很高的网络带宽
注没有针对Windows的脚本欢迎贡献
在Docker script创建的容器中创建OpenJDK
将下列文件从移动设备中复制到你的机器
Docker/*.*
Docker/OpenJDK9
Docker/OpenJDK9-baseimage
安装Docker和Boot2Docker并确保其在各自的环境中正常运行
阅读README.md来了解各个脚本文件是做什么的
确定之后使用这些脚本
用loadImageToFile.sh脚本来加载docker镜像到你本地的仓库
注不要通过执行Dockerfile 来创建镜像 – 这需要很长时间已经很高的网络带宽
注没有针对Windows的脚本欢迎贡献
最后
完成后请进入“How to navigate and make progress ? ”顺着流程进入下一步。

  • 转载自 并发编程网 - ifeve.com

Adopt Open JDK官方文档(二)如何使用导航和取得进步?相关推荐

  1. Adopt Open JDK官方文档(四)基于虚拟机的编译环境

    4.基于虚拟机的编译环境 准备工作 编译你自己的虚拟机 编译你自己的轻量级虚拟机 在Host 与 Guest VM 之间共享文件 适用于 OpenJDK 8 的Vagrant Puppet 环境 4. ...

  2. Unity 优化翻译官方文档(二) ------ 平台特定覆盖的纹理压缩格式

    官方文档 : https://docs.unity3d.com/Manual/class-TextureImporterOverride.html 虽然Unity支持许多常见的图像格式作为导入纹理的源 ...

  3. StackExchange.Redis 官方文档(二) Configuration

    配置 有多种方式可以配置redis,StackExchange.Redis提供了一个丰富的配置模型,在执行Connect (or ConnectAsync) 时被调用: var conn = Conn ...

  4. javaStruct - 通讯协议的解封包第三方库--(二)官方文档二

    原文链接 https://code.google.com/archive/p/javastruct/ 翻译用工具 翻译使用的是个人免费版Transmate 译文 简介 当与嵌入式设备和其他使用C语言样 ...

  5. Angular 4官方文档(二)【数据的展现】

    通过把 Angular 组件的属性绑定到 HTML 模板的控件上,我们可以展示数据. 本小节中,我们将会创建一个英雄列表组件.我们将展示英雄名字的列表,并根据条件来决定是否在列表下方展示一条信息. 最 ...

  6. 【Android 命令行工具】Android 命令行工具简介 ( 官方文档 | SDK 命令行工具 | SDK 构建工具 | SDK 平台工具 | 模拟器工具 | Jetifier 工具 )

    文章目录 一.官方文档 二.Android 命令行工具简介 1.SDK 命令行工具 2.SDK 构建工具 3.SDK 平台工具 4.模拟器工具 5.Jetifier 工具 一.官方文档 Android ...

  7. MySQL8.0.28安装教程全程参考MySQL官方文档

    MySQL8.0.28详细安装教程.提供了Windows10下安装MariaDB与MySQL8.0同时共存的方法,以及Linux发行版Redhat7系列安装MySQL8.0详细教程.Windows10 ...

  8. OpenGL ES着色器语言之变量和数据类型(二)(官方文档第四章)

    OpenGL ES着色器语言之变量和数据类型(二)(官方文档第四章) 4.5精度和精度修饰符 4.5.1范围和精度 用于存储和展示浮点数.整数变量的范围和精度依赖于数值的源(varying,unifo ...

  9. 对于微信二维码相关官方文档的一些注解(微信登录和绑定微信、关注公众号)

    转载自:https://www.jianshu.com/p/d533c69be034 由于微信官方文档对此的描述虽然还可以,但是还是有一些让人疑惑的地方,所以笔者做了一些注解,希望对大家有所帮助 为什 ...

最新文章

  1. MyBatis中#{}和${}的区别
  2. GitLab 配置邮箱
  3. python中PIL模块
  4. PAT甲级1138 Postorder Traversal:[C++题解]前序遍历和中序遍历建树
  5. Java入门超简单程序Song List
  6. 搜索宝典:搜索资料的三重境界【帮助高级篇】
  7. 安卓权威编程指南 挑战练习 20.9 创建多版本主题
  8. Solar中跨控制器引用视图!
  9. react 版权问题_react兼容ie
  10. vue子组件mounted不执行_vue中父子组件传值,解决钩子函数mounted只运行一次的问题...
  11. 【大数据部落】R语言实现:混合正态分布EM最大期望估计法
  12. php与web服务器关系
  13. 隧道点云处理(三):一种简单的隧道二维中线提取方法
  14. C++ 学习笔记(22) Builder Pattern
  15. Longest Palindrome
  16. ATTCK 1一个烂尾的学习记录
  17. echoServer回显服务器
  18. Sketch 插件篇(1)——Sketch Measure
  19. 十年磨一剑,你要的低代码平台在这里
  20. 39 项目实战---购物+转账系统

热门文章

  1. 通讯展在即,四大门户战前比拼
  2. .xsd转Java Bean及生成的.java文件编码格式调整
  3. 【Scala】MurmurHash3的使用
  4. 泛函分析 03.02 内积空间与Hilbert空间-正交与正交分解
  5. 获取请求header参数
  6. Cannot redeclare C() (previously declared in .
  7. 再见,巴黎NFT日,精彩片段
  8. WebService简单实例(一通百通)
  9. app测试的相关内容
  10. 实验七:继承下的构造函数与析构函数