简介
大家有没有试过在使用Oracle jdk的项目时,由于jdk的包太大,制作出来的镜像往往特别大,在大规模容器化的场景下,镜像的大小对存储的空间,拉取速度,启动的快慢都有一定 影响,而在很多项目中,jdk包中的很多文件其实是用不着的,所以可以将这部分文件进行删除来缩减jdk包的大小。
代码
删除jdk包中无关的文件,具体代码如下,删除以后就可以制作出一个mini版的jdk了。将脚本拷贝到和jdk包相同的目录,jdkv的变量更改成jdk的目录,执行即可。不同的jdk版本删减后,减少的大小不一样。具体如下:
jdk版本 | 删除前 | 删除后 |
---|---|---|
jdk-1.6 | 205MB | 153M |
jdk-1.7 | 284MB | 138M |
jdk-1.8 | 305MB | 153MB |
jdkv="jdk1.6.0_32"
rm -rf $jdkv/COPYRIGHT \
$jdkv/javafx-src.zip \
$jdkv/README.html \
$jdkv/release \
$jdkv/src.zip \
$jdkv/THIRDPARTYLICENSEREADME-JAVAFX.txt \
$jdkv/THIRDPARTYLICENSEREADME.txt \
$jdkv/*src.zip \
$jdkv/lib/missioncontrol \
$jdkv/lib/visualvm \
$jdkv/lib/*javafx* \
$jdkv/jre/lib/plugin.jar \
$jdkv/jre/lib/ext/jfxrt.jar \
$jdkv/jre/bin/javaws \
$jdkv/jre/lib/javaws.jar \
$jdkv/jre/lib/desktop \
$jdkv/jre/plugin \
$jdkv/jre/lib/deploy* \
$jdkv/jre/lib/*javafx* \
$jdkv/jre/lib/*jfx* \
$jdkv/jre/lib/amd64/libdecora_sse.so \
$jdkv/jre/lib/amd64/libprism_*.so \
$jdkv/jre/lib/amd64/libfxplugins.so \
$jdkv/jre/lib/amd64/libglass.so \
$jdkv/jre/lib/amd64/libgstreamer-lite.so \
$jdkv/jre/lib/amd64/libjavafx*.so \
$jdkv/jre/lib/amd64/libjfx*.so