Forum Discussion
Packing Apps with built in JRE...
I have a couple of applications that I am trying to capture that install their own JRE however after creating the MSIX they complain that the JRE can't be found and suggest setting JAVA_HOME.
---------------------------
Error launching IDEA
---------------------------
Failed to load JVM DLL C:\Program Files\WindowsApps\IntelliJIDEACommunityEdition2016.3.4_163.12024.16.0_x64__p1z46hfsarpje\VFS\ProgramFilesX86\JetBrains\IntelliJ IDEA Community Edition 2016.3.4\jre\jre\bin\server\jvm.dll
If you already have a 32-bit JDK installed, define a JAVA_HOME variable in Computer > System Properties > System Settings > Environment Variables.
---------------------------
OK
---------------------------
The application works fine when installed from original source without an additional JRE installed or a JAVA_HOME Environment Variable set. The file that can't be found is present in the location that the app is looking for them, I have tried capturing the app both with and without installing to VFS as well as installing to a location without spaces in the target folder structure. I have also launched the application during the capture phase and for the first use settings.
I have also used the PSF Trace Fixup but all that seems to do is confirm the error message I am getting from the application.
I'm not sure what else I can try or why the app wouldn't be able to find the JRE when it is looking in the correct place.
18 Replies
- I found the installer, and it seems to install natively without a JRE. Can you provide detail on what version JRE you use, and how to test if the app is working?
- AndrewMason - Never mind. I just reread your original post which had at least the first half of that question answered. I'll test it soon and report back.
I have looked into UVC. It is an odd thing...
I don't have it working yet, but getting closer.
What I know:
- DynamicLibraryFixup is needed for a number of dlls..
- vcruntime140.dll and vcruntime140_1.dll must still be copied to the Program Files\UVC folder (as the app uses fileexists before loadlibrary so DynamicLibraryFixup doesn't help.
The app makes use of FindFirstFile and gets confused. This is something that I am investigating as a potential edge-case bug in the FileRedirectionFixup. I'll drop a note back here if fixable.
- Siva116Brass ContributorHi AndrewMason....
Is this resovled???? I am also facing this.- AndrewMasonCopper ContributorHi Siva116,
No, this isn’t resolved yet but I have noticed that if you inspect the main EXE with ProcMon you can see that the JRE bin folder and at least one other JRE path is present in the path environment variable for the EXE so it looks like that is created at runtime and the path is correct but it still says the JRE is invalid.
I’m not sure if there is something else missing or if maybe it wants to write somewhere in the JRE location.
Andrew- Siva116Brass Contributor