1. 下载 JDK
没有 Oracle 账号,不让我下载。
全文结束。
好吧,找到一个镜像站
https://repo.huaweicloud.com/java/jdk/8u201-b09/
(为什么是8u201?因为这之后的版本授权协议改了)
(为什么你非要用Oracle JDK,不是有open jdk吗?因为open jdk缺了jvisualvm.exe等很多东西)
终于下载到了 jdk-8u201-windows-x64.exe
这个不是 zip 包
2. 使用 7-zip 解压 jdk-8u201-windows-x64.exe
在 jdk-8u201-windows-x64\.rsrc\1033\JAVA_CAB10 目录下,有一个 111 文件
3. 解压111文件
得到 tools.zip
这个 tools.zip 文件就是绿色版的JDK
4. 将 tools.zip 解压到 C:\Program Files\Java\jdk1.8.0_201
5. 配置环境变量 JAVA_HOME,并将 %JAVA_HOME%/bin 加到 PATH
6. 然后运行 java -version
报错 Error occurred during initialization of VM java/lang/NoClassDefFoundError:java/lang/Object
然后百度搜索 据说是
/lib 下 只有 tools.pack 没有 tools.jar
/jre/lib 下 只有 rt.pack 没有 rt.jar
7. 执行
unpack200.exe tools.pack tools.jar
unpack200.exe rt.pack rt.jar
执行失败
for /r %x in (*.pack) do .\bin\unpack200 -r "%x" "%~dx%~px%~nx.jar" (this will convert all .pack files into .jar files)
// 一定要把所有的.pack文件变成.jar文件
在管理员模式下运行CMD,再次执行上面两个unpack200,执行成功
从管理员模式退出,再次运行 java -version 运行成功!
==
参考:
https://stackoverflow.com/questions/1619662/how-can-i-get-the-latest-jre-jdk-as-a-zip-file-rather-than-exe-or-msi-installe
With 7-Zip extract all the files from jdk-XuXX-windows-x64.exe into the directory C:\JDK
Execute the following commands in cmd.exe:
cd C:\JDK\.rsrc\1033\JAVA_CAB10
extrac32 111
Unpack C:\JDK\.rsrc\1033\JAVA_CAB10\tools.zip with 7-zip
Execute the following commands in cmd.exe:
cd C:\JDK\.rsrc\1033\JAVA_CAB10\tools\
for /r %x in (*.pack) do .\bin\unpack200 -r "%x" "%~dx%~px%~nx.jar" (this will convert all .pack files into .jar files)
Copy all contents of C:\JDK\.rsrc\1033\JAVA_CAB10\tools where you want your JDK to be
Setup JAVA_HOME and PATH manually to point to your JDK dir and its BIN subdirectory.
--
修改:townhope FROM 203.168.16.*
FROM 203.168.16.*