有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

减少JavaFx捆绑包中JRE的大小

我创建了一个JavaFX应用程序,为此我使用Java Runtime的私有副本将其捆绑为一个独立的独立应用程序

但这成了我的应用程序166MB的大小,其中146MB是用于jre的

我如何减少应用程序的大小,或者说是捆绑运行时JRE的大小

我读到somewhere一些文件在jre中是可选的,所以我试图在删除这些文件后运行我的应用程序,但无法运行该应用程序

那么,如何从应用程序的运行时JRE中删除未使用的文件/文件夹/模块呢

正是said

Only a subset of Java Runtime is included by default. Some optional and rarely used files are excluded to reduce the package size, such as all executables. If you need something that is not included by default, then you need to copy it in as a post-processing step.

因此,默认情况下,它不会在jre中添加所有文件,在这种情况下,我的应用程序不会运行。应用jar在使用系统jar时工作正常。 因此,我在后处理步骤中添加了所有铰孔文件

谢谢


共 (1) 个答案

  1. # 1 楼答案

    Jigsaw项目似乎有助于实现这一目标

    但它看起来最早会出现在Java9中

    因此,据我从你的帖子中所了解,你不能用JavaFX提供的缩小JRE大小来运行你的应用程序。此外,您尝试了详细的步骤here,但仍然无法运行应用程序

    由于JRE的JavaFX包中提供的类数量有限,许多应用程序可以正常运行。也许您可以检查一下您正在使用的导致此问题的Java库。然后你可以探索这些库的替代品。最后,您需要测试这些替代库是否比JavaFX封装中的缩减所提供的空间缩减更大或更小