HDFView fails to execute


#1

I installed HDFView for Windows.

Running from the command line, the following errors occur
Any Ideas what the problem is?

java.lang.UnsatisfiedLinkError: C:\Users\RJC1\AppData\Local\HDF_Group\HDFView\runtime\bin\hdf5_java.dll: The specified procedure could not be found

at hdf.view.HDFView.main(HDFView.java:2563)
Exception in thread “main” java.lang.UnsatisfiedLinkError: ‘int hdf.hdf5lib.H5.H5dont_atexit()’
at jarhdf5@1.10.7/hdf.hdf5lib.H5.H5dont_atexit(Native Method)

Failed to launch JVM


#2

Windows require all the dlls to be found on the path, the java packager does not set the path correctly. On the HDFView support site is the details. See: https://portal.hdfgroup.org/display/support/HDFView+3.1.2#HDFView3.1.2-knownprobs


#3

Sorry, I can’t find any more details using this link. What is the solution to the problem, which directories do I have to add exactly? This is how I was trying to start the viewer from the command line to see the errors:

Thanks a lot,
Jens

O:_DEV\HDFViewApp-3.1.2-win10_64-vs16\HDFView>HDFView.exe
SLF4J: Class path contains multiple SLF4J bindings.
SLF4J: Found binding in [jar:file:///O:/_DEV/HDFViewApp-3.1.2-win10_64-vs16/HDFView/app/mods/slf4j-nop-1.7.25.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [jar:file:/O:/_DEV/HDFViewApp-3.1.2-win10_64-vs16/HDFView/app/extra/slf4j-simple-1.7.25.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [jar:file:/O:/_DEV/HDFViewApp-3.1.2-win10_64-vs16/HDFView/app/slf4j-nop-1.7.25.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation.
SLF4J: Actual binding is of type [org.slf4j.helpers.NOPLoggerFactory]
java.lang.UnsatisfiedLinkError: O:_DEV\HDFViewApp-3.1.2-win10_64-vs16\HDFView\runtime\bin\hdf5_java.dll: The specified procedure could not be found
at java.base/jdk.internal.loader.NativeLibraries.load(Native Method)
at java.base/jdk.internal.loader.NativeLibraries$NativeLibraryImpl.open(NativeLibraries.java:383)
at java.base/jdk.internal.loader.NativeLibraries.loadLibrary(NativeLibraries.java:227)
at java.base/jdk.internal.loader.NativeLibraries.loadLibrary(NativeLibraries.java:169)
at java.base/jdk.internal.loader.NativeLibraries.findFromPaths(NativeLibraries.java:310)
at java.base/jdk.internal.loader.NativeLibraries.loadLibrary(NativeLibraries.java:280)
at java.base/java.lang.ClassLoader.loadLibrary(ClassLoader.java:2440)
at java.base/java.lang.Runtime.loadLibrary0(Runtime.java:809)
at java.base/java.lang.System.loadLibrary(System.java:1893)
at jarhdf5@1.10.7/hdf.hdf5lib.H5.loadH5Lib(H5.java:315)
at jarhdf5@1.10.7/hdf.hdf5lib.H5.(H5.java:255)
at jarhdf5@1.10.7/hdf.hdf5lib.HDF5Constants.(HDF5Constants.java:29)
at hdf.object.h5.H5File.(H5File.java:115)
at java.base/java.lang.Class.forName0(Native Method)
at java.base/java.lang.Class.forName(Class.java:377)
at hdf.object.FileFormat.(FileFormat.java:227)
at hdf.view.HDFView.createToolbar(HDFView.java:1036)
at hdf.view.HDFView.createMainWindow(HDFView.java:448)
at hdf.view.HDFView.openMainWindow(HDFView.java:280)
at hdf.view.HDFView$39.run(HDFView.java:2571)
at swt/org.eclipse.swt.widgets.Synchronizer.syncExec(Synchronizer.java:236)
at swt/org.eclipse.swt.widgets.Display.syncExec(Display.java:4735)
at hdf.view.HDFView.main(HDFView.java:2563)
Exception in thread “main” java.lang.UnsatisfiedLinkError: ‘int hdf.hdf5lib.H5.H5dont_atexit()’
at jarhdf5@1.10.7/hdf.hdf5lib.H5.H5dont_atexit(Native Method)
at jarhdf5@1.10.7/hdf.hdf5lib.H5.loadH5Lib(H5.java:331)
at jarhdf5@1.10.7/hdf.hdf5lib.H5.(H5.java:255)
at jarhdf5@1.10.7/hdf.hdf5lib.HDF5Constants.(HDF5Constants.java:29)
at hdf.object.h5.H5File.(H5File.java:115)
at java.base/java.lang.Class.forName0(Native Method)
at java.base/java.lang.Class.forName(Class.java:377)
at hdf.object.FileFormat.(FileFormat.java:227)
at hdf.view.HDFView.createToolbar(HDFView.java:1036)
at hdf.view.HDFView.createMainWindow(HDFView.java:448)
at hdf.view.HDFView.openMainWindow(HDFView.java:280)
at hdf.view.HDFView$39.run(HDFView.java:2571)
at swt/org.eclipse.swt.widgets.Synchronizer.syncExec(Synchronizer.java:236)
at swt/org.eclipse.swt.widgets.Display.syncExec(Display.java:4735)
at hdf.view.HDFView.main(HDFView.java:2563)
Failed to launch JVM


#4

One solution is a link to download a batch file for windows.


#5

Another solution on windows is to copy the dlls in the runtime/bin folder to the top folder alongside HDFView.exe.


#6

thanks, found a .bat file in another thread here


#7

I see you found an alternate solution, but for the record, the suggested linkdoes provides links to hdfview scripts that set the PATH for Windows or Linux:

Known Problems In This Release

Workaround for issue with launching HDFView:
A path issue which causes HDFView to fail to launch can be 
resolved by downloading the script below that pertains to 
your platform:

    hdfview.bat (Windows)
    hdfview.sh (Unix)