您的位置:首页 > 编程语言 > Java开发

GraalVM - 打包 Java 程序为 exe 可执行程序

2020-08-23 12:52 441 查看

GraalVM - 打包 Java 程序为 exe 可执行程序

  • 使用
  • 总结
  • 环境

    系统: Win10 2004
    VS: Visual Studio 2019
    GraalVM: graalvm-ce-java11-windows-amd64-20.2.0.zip

    安装配置

    Visual Studio

    安装 Visual Studio 主要是 GraalVM 将 class 文件编译成 exe 文件需要 MSVC 环境, 虽然体积很大, 但重要的是简单.

    GraalVM

    GraalVM 下载后是一个压缩包, 所以下载完后, 将它放置我们的软件安装目录后解压, 然后配置环境变量

    由于 GraalVM 本身就包含了 JDK 的命令, 所以这里需要注意与原来安装的 JDK 环境的冲突, 可以在使用 GraalVM 的时候把

    JAVA_HOME
    指向 GraalVM 的安装目录, 后面要使用原来的 JDK 的时候再改回去.

    注意: GraalVM 命令需要在 CMD 环境里使用

    native-image

    在使用前我们需要安装

    native-image
    , 执行命令
    gu install native-image
    , 由于国内环境, 下载安装速度很慢, 可能需要重试几次才能完成.

    使用

    我们先准备一个 Hello world java 源码文件

    java

    Main

    public class Main {
    public static void main(String[] args) {
    System.out.println("Hello world");
    }
    }

    编译

    javac Main.java
    执行
    java Main

    native-image

    接下来就是重点了, 执行

    native-image Main


    发现报环境没有
    cl
    命令,
    cl
    命令是在 Visual Studio 里的, 而安装的时候, 是没有自动添加到我们系统的环境变量里的, 这时我们需要去执行一个脚本, 这个脚本是在 Visual Studio 的安装目录

    注意的是, 不是双击执行, 而是要在我们刚刚的 CMD 命令行里执行, 将添加相关环境变量到该 CMD 环境, 因为是临时变量, 所以只对该 CMD 生效, 若需要一直生效, 可以查看该 bat 脚本, 手动添加到系统环境变量里去

    call "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Auxiliary\Build\vcvars64.bat"


    再次执行
    native-image Main


    查看目录生成了多个文件, 其中一个文件以 .exe 结尾, 执行

    执行成功, 生成的可执行文件也还是挺大的, 这是因为内部集成了 Java 所需要的运行环境.

    总结

    以上就是今天要讲的内容,本文仅仅简单介绍了 GraalVM 的

    native-image
    命令的使用. GraalVM 是 Oracle 野心勃勃的项目, 它可以执行 js/py/c/c++ 等语言, 似乎想大一统编程语言, 具体的大家可以去官网等地查找相关新闻博客.

    内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
    标签: