ADDITIONAL SYSTEM INFORMATION :
Any Windows (7, 8, 8.1, 10, 11, Server 2019, Server 2022). Any JDK/JRE
A DESCRIPTION OF THE PROBLEM :
Our company produces software in Java which is delivered to the customer with an OpenJDK JRE from adoptium.net. We use the HDF5 library (self-compiled from source), which consists of a C part and a Java interface which calls the C-code via java.native.
Since Windows 10, Microsoft supports long path via the usual file routines in Win32 by adding a section in the manifest XML. The executables java.exe and javaw.exe based on OpenJDK do not contain this section, hence do not support long paths via the usual API (without the prefix \\?\). Since we are using HDF5 which opens and closes files via the Win32 API, we require the long path section in the manifest XML. We can add this section in the executables from the released OpenJDK JRE, but then we lose the digital code signature from the Eclipse foundation.
Would it be possible to add the following section to the manifest XML:
<asmv3:application>
<asmv3:windowsSettings xmlns:dpi1="http://schemas.microsoft.com/SMI/2005/WindowsSettings" xmlns:ws2="http://schemas.microsoft.com/SMI/2016/WindowsSettings">
<ws2:longPathAware>true</ws2:longPathAware>
</asmv3:windowsSettings>
</asmv3:application>
(the section can be merged with the dpiAware section).
This is the link to the manifest:
https://github.com/openjdk/jdk/blob/master/src/java.base/windows/native/launcher/java.manifest
Any Windows (7, 8, 8.1, 10, 11, Server 2019, Server 2022). Any JDK/JRE
A DESCRIPTION OF THE PROBLEM :
Our company produces software in Java which is delivered to the customer with an OpenJDK JRE from adoptium.net. We use the HDF5 library (self-compiled from source), which consists of a C part and a Java interface which calls the C-code via java.native.
Since Windows 10, Microsoft supports long path via the usual file routines in Win32 by adding a section in the manifest XML. The executables java.exe and javaw.exe based on OpenJDK do not contain this section, hence do not support long paths via the usual API (without the prefix \\?\). Since we are using HDF5 which opens and closes files via the Win32 API, we require the long path section in the manifest XML. We can add this section in the executables from the released OpenJDK JRE, but then we lose the digital code signature from the Eclipse foundation.
Would it be possible to add the following section to the manifest XML:
<asmv3:application>
<asmv3:windowsSettings xmlns:dpi1="http://schemas.microsoft.com/SMI/2005/WindowsSettings" xmlns:ws2="http://schemas.microsoft.com/SMI/2016/WindowsSettings">
<ws2:longPathAware>true</ws2:longPathAware>
</asmv3:windowsSettings>
</asmv3:application>
(the section can be merged with the dpiAware section).
This is the link to the manifest:
https://github.com/openjdk/jdk/blob/master/src/java.base/windows/native/launcher/java.manifest
- relates to
-
JDK-8315405 Can't start process in directory with very long path
-
- Closed
-
- links to