X-Git-Url: https://gerrit.simantics.org/r/gitweb?a=blobdiff_plain;f=vtk%2Fsrc%2Fvtk%2FvtkJavaDep.java;h=0377199e106ffde0ed74802a5f147a5d45d9f936;hb=efb52587babd1b858c8e77fedc44a5b4ef0c1088;hp=d99566ae9d92d7ca0a2fbb31f548bb49db98df88;hpb=360dca1c9b2db04093ac601af718aa80951bca19;p=simantics%2F3d.git diff --git a/vtk/src/vtk/vtkJavaDep.java b/vtk/src/vtk/vtkJavaDep.java index d99566ae..0377199e 100644 --- a/vtk/src/vtk/vtkJavaDep.java +++ b/vtk/src/vtk/vtkJavaDep.java @@ -8,9 +8,6 @@ package vtk; */ public class vtkJavaDep { static String[] libs = new String[] { - "awt", - "jawt", - "vtksys", "vtkCommonCore", "vtkWrappingJava", @@ -123,14 +120,28 @@ public class vtkJavaDep { "vtkIOImportJava", }; - - - static { - for (String lib : libs) - System.loadLibrary(lib); - } - - static void load() { - - } + + private static boolean loaded = false; + + static void load() { + if (!loaded) { + + try { + Class.forName("java.awt.Toolkit"); + } catch (ClassNotFoundException e) { + throw new IllegalStateException(e); + } + try { + System.loadLibrary("jawt"); + } catch (UnsatisfiedLinkError e) { + // bypass potential load error. If jawt is not really loaded, we will get errors + // with VTK dlls. + } + + for (String lib : libs) + System.loadLibrary(lib); + + loaded = true; + } + } }