https://www.graalvm.org/java/quickstart/
https://www.graalvm.org/downloads/
https://github.com/graalvm/graalvm-ce-builds/releases
https://github.com/graalvm/graalvm-ce-builds/releases
电脑系统是 macOS (amd64),java 17 ,选定版本下载
https://github.com/graalvm/graalvm-ce-builds/releases/download/vm-22.3.0/graalvm-ce-java17-darwin-amd64-22.3.0.tar.gz
解压缩到 /Users/fox/lang 目录下,最后的路径是
/Users/fox/lang/graalvm-ce-java17--22.3.0
每个版本的 终端配置可能不一样。我的是 .zshrc 文件
vim ~/.zshrc
最后加入
export PATH=/Users/fox/lang/graalvm-ce-java17--22.3.0/Contents/Home/bin:$PATH
export JAVA_HOME=/Users/fox/devlops/graalvm-ce-java17-22.3.0/Contents/Home
source ~/.zshrc
查看 是否生效
echo $JAVA_HOME
输出/Users/fox/devlops/graalvm-ce-java17-22.3.0/Contents/Home表示生效
如果mac必备工具没有安装,先执行安装命令 xcode-select --install,安装必备工具
注意: 这个可能安装非常慢,访问的是国外的文件,有条件的可以利用梯子
未使用梯子时,安装
gu install native-image
先设置梯子,如果你使用的全局,那么可以不用此命令
注意梯子的 端口号,是你梯子的端口号
export https_proxy=https://127.0.0.1:4780
export http_proxy=http://127.0.0.1:4780
最后执行
gu install native-image
下载地址
https://github.com/graalvm/graalvm-ce-builds/releases
下载native-image-installable-svm 开头的,根据你的java 选择版本和系统版本
我这边选择
native-image-installable-svm-java17-darwin-amd64-22.3.0.jar
最后安装
gu -L install native-image-installable-svm-java17-darwin-amd64-22.3.0.jar
查看已安装
gu list
输出
ComponentId Version Component name Stability Origin
---------------------------------------------------------------------------------------------------------------------------------
graalvm 22.3.0 GraalVM Core Supported
native-image 22.3.0 Native Image Early adopter github.com
一键 编译和打包
./gradlew nativeCompile
编译
./gradlew build
假设遍以后的jar文件名称是demo001-0.0.1-SNAPSHOT.jar
打包,打包格式 native-image -jar jar包路径 编译后文件名称
native-image -jar /root/demo001/build/libs/demo001-0.0.1-SNAPSHOT.jar demo001
或者
native-image -jar demo001-0.0.1-SNAPSHOT.jar demo001或
native-image --verbose demo001-0.0.1-SNAPSHOT.jar demo001
demo001: 编译后文件名称
https://github.com/graalvm/graalvm-ce-builds/releases
电脑系统是 linux (amd64),java 17 ,选定版本下载
https://github.com/graalvm/graalvm-ce-builds/releases/download/vm-22.3.0/graalvm-ce-java17-linux-amd64-22.3.0.tar.gz
解压缩到 /Users/fox/lang 目录下,最后的路径是
/Users/fox/lang/graalvm-ce-java17--22.3.0
最新版linux系统 都支持 此目录下文件
编辑文件
vim /etc/profile.d/jdk.sh
最后加入
export JAVA_HOME=/opt/graalvm-ce-java17-22.3.0
#export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib
export PATH=$PATH:$JAVA_HOME/bin
source /etc/profile.d/jdk.sh
查看 是否生效
echo $JAVA_HOME
输出/opt/graalvm-ce-java17-22.3.0表示生效
安装必备工具
Linux(cenots)使用 yum install gcc glibc-devel zlib-devel
Ubuntu/使用 apt-get install build-essential libz-dev zlib1g-dev
其他Linux使用 dnf install gcc glibc-devel zlib-devel libstdc++-static
其他更多可以看 https://www.graalvm.org/latest/reference-manual/native-image/#install-native-image
注意: 这个可能安装非常慢,访问的是国外的文件,有条件的可以利用梯子
未使用梯子时,安装
gu install native-image
先设置梯子,如果你使用的全局,那么可以不用此命令
注意梯子的 端口号,是你梯子的端口号
export https_proxy=https://127.0.0.1:4780
export http_proxy=http://127.0.0.1:4780
最后执行
gu install native-image
下载地址
https://github.com/graalvm/graalvm-ce-builds/releases
下载native-image-installable-svm 开头的,根据你的java 选择版本和系统版本
我这边选择
native-image-installable-svm-java17-linux-amd64-22.3.0.jar
最后安装
gu -L install native-image-installable-svm-java17-linux-amd64-22.3.0.jar
查看已安装
gu list
输出
ComponentId Version Component name Stability Origin
---------------------------------------------------------------------------------------------------------------------------------
graalvm 22.3.0 GraalVM Core Supported
native-image 22.3.0 Native Image Early adopter github.com
一键 编译和打包
./gradlew nativeCompile
编译
./gradlew build
假设遍以后的jar文件名称是demo001-0.0.1-SNAPSHOT.jar
打包,打包格式 native-image -jar jar包路径 编译后文件名称
native-image -jar /root/demo001/build/libs/demo001-0.0.1-SNAPSHOT.jar demo001
或者
native-image -jar demo001-0.0.1-SNAPSHOT.jar demo001或
native-image --verbose demo001-0.0.1-SNAPSHOT.jar demo001
demo001: 编译后文件名称