jintellitype: JIntellitype64.dll can not be loaded correctly since 8u261

When I updated my JRE to 8u261 or 8u271, my application couldn’t run. The specific appearance is, when I fire it up, my system tray icon could be loaded correctly, but then it will exit with code-1073741819 (0xC0000005). In Windows event viewer, I got the information below: `- <Event xmlns="http://schemas.microsoft.com/win/2004/08/events/event">

  • <System> <Provider Name="Application Error" /> <EventID Qualifiers="0">1000</EventID> <Version>0</Version> <Level>2</Level> <Task>100</Task> <Opcode>0</Opcode> <Keywords>0x80000000000000</Keywords> <TimeCreated SystemTime="2020-11-20T13:43:54.0910176Z" /> <EventRecordID>6074</EventRecordID> <Correlation /> <Execution ProcessID="0" ThreadID="0" /> <Channel>Application</Channel> <Computer>LightBook</Computer> <Security /> </System>
  • <EventData> <Data>java.exe</Data> <Data>8.0.2610.12</Data> <Data>5eeb13ea</Data> <Data>JIntellitype64.dll</Data> <Data>0.0.0.0</Data> <Data>4b5c9033</Data> <Data>c0000005</Data> <Data>0000000000001d4e</Data> <Data>1c68</Data> <Data>01d6bf432ee19810</Data> <Data>C:\Program Files\Java\jdk1.8.0_261\bin\java.exe</Data> <Data>C:\Users\ma201\AppData\Local\Temp\JIntellitype64.dll</Data> <Data>cb016638-2c91-40c2-badf-fdb0dbfa4e7f</Data> <Data /> <Data /> </EventData> </Event>`

If that means I could only use 8u251?

About this issue

  • Original URL
  • State: closed
  • Created 4 years ago
  • Comments: 54 (24 by maintainers)

Commits related to this issue

Most upvoted comments

A deeper debug: when it runs to JIntellitypeHandler.cpp @ line 40, I find it unable to get the correct pointer, that is, l_handler , while it can be returned properly using 8u251. I don’t know whether it’s caused by jvm or not, but again, for detailed information, I need jvm.pdb. Now I’m trying to compile openjdk 11 to see if I can get the pdb file.

@melloware now you can remove

Currently does not work on Java 11, probably starting with Java 9. Latest recommended version is Java 8.

in your README.md.

@melloware I’m excited to inform you of the solution of this problem. After countless random attempts, I finally found out the key breakthrough point the size of JIntellitypeHandler pointer which was the same as jint’s years ago.
According to the result, I suppose that jvm compiled with VS2017 has doubled the size of JIntellitype pointer, so when getting it after store, the pointer is incorrect. So I changed the type of handler from int to long in Java code(And synchronized modifications in cpp code).
It has passed tests running with openjdk 11. I recommend you to create a new branch as later I will create a pull request. By the way, I will also release binary files in my fork soon. Solving such a historical problem, could you add me to the contributor list?

AdoptOpenJDK has a few request for a distribution of openjdk that would include the necessary jvm.pdb debugging files. Perhaps creating a request there or contacting one of the devs to do a single build would be useful? Really hoping we can get this figured out @melloware @RocketBD . For now I can continue to force an install of 8u251, but obviously this is less than ideal.