Oh, inconsistent path separators indeed. Good catch! This is the reason it doesn't work as it should.
Filed https://bugs.openjdk.java.net/browse/JDK-8271155 to track it.

- Alexey


On 7/22/2021 2:04 PM, Michael Hall wrote:

On Jul 22, 2021, at 12:29 PM, Alexey Semenyuk <alexey.semen...@oracle.com> 
wrote:

The fix for JDK-8263157 cleared the default value of `java.library.path` system 
property and resulted in JDK-8267598 regression. So the fix for JDK-8263157 was 
reworked: jpackage doesn't set `java.library.path` system property, but it adds 
`app` directory to `DYLD_LIBRARY_PATH` env variable on OSX. OSX JVM startup 
code builds the value of `java.library.path` system property from the value of 
`DYLD_LIBRARY_PATH` env variable. This way jpackage doesn't interfere with the 
default JVM initialization code and also adds `app`  directory to 
`java.library.path` system property.
As far as I can see it from the log, the value of `java.library.path` contains 
`app` dir - 
`/Users/mjh/HalfPipe/HalfPipe_jpkg/outputdir/HalfPipe.app/Contents/app`. So it 
works as expected.
Are you sure the native library is in place?

- Alexey

I missed that it was there somehow, but…

ls outputdir/HalfPipe.app/Contents/app | grep dylib
libAppleScriptEngine.dylib
libBSF4ooRexx.dylib
libfscript.dylib
libhp.dylib
libmacattrs.dylib

Also overriding
-Djava.library.path=$APPDIR
worked. So I didn’t look too closely.
So what am I still missing?
;/Users/mjh/HalfPipe/HalfPipe_jpkg/outputdir/HalfPipe.app/Contents/app:/Users/mjh/Library/Java/Extensions:
Inconsistent path separators?

Reply via email to