EXCEPTION_ACCESS_VIOLATION after build a windows self-contained application with jdeps + jlink + jpackage

huangapple go评论120阅读模式
英文:

EXCEPTION_ACCESS_VIOLATION after build a windows self-contained application with jdeps + jlink + jpackage

问题

我正在尝试使用 jdeps + jlink + jpackage 构建一个适用于 Windows 的捆绑包(独立应用程序)。

在 Mac 上,使用相同的步骤,我成功地创建了一个完全可用的自包含的 ".app",用于此项目 graph-editor,参考了 JPackageScriptFX,通过结合使用 maven 和一个使用 jdeps + jlink + jpackage 的脚本。

我期望在安装了 wix 3.x 之后,相同的 jdeps + jlink + jpackage 配置也可以在 Windows 上运行。

该过程可以正常运行并生成一个安装程序,但不幸的是,当我启动 ".exe" 文件时出现以下错误。

  • 我使用的配置的更多细节可以在 这里 找到。
  • 我使用的 "bat" 脚本是这个:build_app.bat
  • 在 Windows 上运行 maven install 命令在 主项目 上可以重现这个问题。

#
# Java Runtime Environment 发生严重错误:
#
#  EXCEPTION_ACCESS_VIOLATION (0xc0000005),位于 pc=0x0000000000000000,pid=16672,tid=5124
#
# JRE 版本:(15.0+36) (构建 )
# Java VM:OpenJDK 64 位 Server VM (15+36,mixed mode,tiered,compressed oops,g1 gc,windows-amd64)
# 有问题的框架:
# C  0x0000000000000000
#
# 在客户端版本的 Windows 上,默认情况下不会写入核心转储。小转储在默认情况下不在启用状态

完整的 ".log" 打印可以在 这里 找到。

英文:

I'm trying to build a bundle (self-contained app) for windows using jdeps + jlink + jpackage.

On mac, with the same procedure, I managed to create (following JPackageScriptFX as reference) a fully working self-contained ".app" for this project graph-editor through a combination of maven and a script which uses jdeps + jlink + jpackage.

I expected that the same configurations for jdeps + jlink + jpackage would have worked on windows after the installation of wix 3.x.

The procedure works fine and produces an installer, but unfortunately I get the error below when I launch the ".exe" file.

  • More details about my configurations that I used can be found here.
  • The "bat" script that I used is this one: build_app.bat.
  • Running a maven install on the main project on a windows it's possible to replicate the problem.

#
# A fatal error has been detected by the Java Runtime Environment:
#
#  EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x0000000000000000, pid=16672, tid=5124
#
# JRE version:  (15.0+36) (build )
# Java VM: OpenJDK 64-Bit Server VM (15+36, mixed mode, tiered, compressed oops, g1 gc, windows-amd64)
# Problematic frame:
# C  0x0000000000000000
#
# No core dump will be written. Minidumps are not enabled by default on client versions of Windows
#

The full ".log" print can be found here.

答案1

得分: 2

{您的应用程序路径}/runtime/bin/复制zip.dll{您的应用程序路径}

英文:

Copy zip.dll from {your app path}/runtime/bin/ to {your app path}.

答案2

得分: 1

我不知道这个解决方案是否适用于其他遇到相同问题的人,但对我来说,将使用的JDK简单切换到Liberica JDK就可以了。

英文:

I don't know if this solution will fit any other person who will meet the same problem, but for me it was fine to simply switch the JDK used to a Liberica JDK.

huangapple
  • 本文由 发表于 2020年10月17日 23:01:14
  • 转载请务必保留本文链接:https://go.coder-hub.com/64403856.html
匿名

发表评论

匿名网友

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

确定