I am develop setup packager for java application used rhvoice speech synthesizer, which not need administrator's privilege on windows (so i can't use sapi version).
To solve it i am used andoid jni code with formal minimal fixes and all works well on both architectures x86 and x86_64, when java application executed using java.exe from jar files.
But, when i make windows exe application using javafxpackager or for example packr (they are used jvm.dll to work), x86 version work well but x86_64 stops with java EXCEPTION_ACCESS_VIOLATION:
# A fatal error has been detected by the Java Runtime Environment:
#
# EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x00007ff83fa36b2d, pid=110316, tid=0x0000000000019f60
#
# JRE version: OpenJDK Runtime Environment (8.0_201-b09) (build 1.8.0_201-1-ojdkbuild-b09)
# Java VM: OpenJDK 64-Bit Server VM (25.201-b09 mixed mode windows-amd64 compressed oops)
# Problematic frame:
# C [RHVoice.64.dll+0x6b2d]
#
# Failed to write core dump. Minidumps are not enabled by default on client versions of Windows
...
Stack: [0x000000dd61600000,0x000000dd61ad0000], sp=0x000000dd61acf030, free space=4924k
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
C [RHVoice.64.dll+0x6b2d]
C 0x000002990001962e
Java frames: (J=compiled Java code, j=interpreted, Vv=VM code)
j com.github.olga_yakovleva.rhvoice.TTSEngine.doGetVoices()[Lcom/github/olga_yakovleva/rhvoice/VoiceInfo;+0
j com.github.olga_yakovleva.rhvoice.TTSEngine.getVoices()Ljava/util/List;+1
j com.github.olga_yakovleva.rhvoice.Test.go()V+17
j com.github.olga_yakovleva.rhvoice.Test.main([Ljava/lang/String;)V+34
v ~StubRoutines::call_stub
Some years ago in 2014-2015 this method worked without error on windows 7 and 8 on both architectures, but old build does not work well on windows 10 and was recompiled using Visual Studio 2017.
How i can detect a reason such error exception. How i can setup debug environment to research this.
When i am changing version of java (oracle or unofical windows builds openjdk), compiler (vs2015/2017) or build environment operating system (win7 or win10) the problem has come sometimes on x86 version packager and exception address changed between inside rhvoice library or java.
User contributions licensed under CC BY-SA 3.0