Topics   All   MacOS (Only)   Windows (Only)   Linux (Only, Not)   iOS (Only, Not)  
Components   Crossplatform Mac & Win   Server   Client   Old   Deprecated   Guides   Examples   Videos
New in version: 9.1   9.2   9.3   9.4   9.5   10.0   10.1   10.2   10.3   10.4    Statistic  


Initializes JavaVM.

Component Version macOS Windows Server FileMaker Cloud FileMaker iOS SDK
Java 6.5 Yes Yes Yes Yes No
MBS( "Java.Initialize" { ; LibPath; ClassPathList; Option } )   More


Parameter Description Example value
LibPath Optional
Path to java library (e.g. jvm.dll)
If empty, the plugin uses the Java framework on Mac and looks into registry on Windows to find newest Java installation.

e.g. on Windows:
"C:\Program Files\Java\jre1.8.0_101\bin\server\jvm.dll"
ClassPathList Optional
The list of native paths to the jar files to load.
Please pass here all jar files you want to use.
Option Optional
Pass a parameter for each additional option to pass to Java VM initialization.


Returns OK or error.


Initializes JavaVM.
You can either pass path to jvm library file or let the plugin look for it. To access classes, you need to pass paths to the jar and class files you want to use.
Returns error if already a JavaVM is initialized.
Please be aware that you can only have one VM running at a given time, so you can’t use Java in other plugin and our plugin together.

This should work fine for any Java version starting with 1.4 or newer. Tested with 1.7 and 1.8.
May not initialize probably if other plugin initialized Java before.

Returns "Using existing Java VM." in case an existing Java VM initialized by other plugin is used. In that case we can't pass your class paths or other options!

On Windows, we look into Local Machine\SOFTWARE\JavaSoft\Java Runtime Environment in registry to find the newest entry and the path to the jvm.dll file. Please note that on Windows you can install 32-bit and 64-bit version of Java and you need the matching bit number to FileMaker application.

If you get error 126 on Windows, maybe MSVCR100.DLL is missing. So install Visual Studio 2010 runtime libraries. You can download them from Microsoft website. Do not download them from other websites spreading malware!

This function requires a native path. Use Path.FileMakerPathToNativePath to convert a FileMaker path to a native path if required. If you like to have the user choose the path, you can use FileDialog functions.
For Server be aware that server has limited permissions and may not be able to access all files on a computer.


Initialize java:

Set Variable [ $r ; Value: MBS("Java.Initialize") ]
If [ MBS("Java.Initialized") ]
    Show Custom anzeigen [ "Java" ; "Java initialized." ]
    Show Custom anzeigen [ "Java" ; "Java failed to initialize" & ¶ & $r ]
End If

Initialize on Linux:

Set Variable [ $r ; Value: MBS("Java.Initialize"; "/home/cs/jrel.6.0_05/lib/x64/client/"; "/java/test.jar¶/java/driver.jar") ]

Init with three class path entries:

MBS("Java.Initialize"; Java Test::Path to Java Library; Java Test::ClassPath1 & ¶ & Java Test::ClassPath2 & ¶ & Java Test::ClassPath3)

Initialize using Java engine for Web Direct on Linux:

MBS( "Java.Initialize"; "/opt/FileMaker/FileMaker Server/Web Publishing/java/lib/amd64/server/" )

See also

Example Databases

Blog Entries

Release notes

  • Version 10.0
  • Version 9.4
    • Improved Java search for Java.Initialize function on Windows to find jvm.dll.

Created 2nd October 2016, last changed 26th May 2020

Java.GetStaticField   -   Java.Initialized

Feedback: Report problem or ask question.

MBS FileMaker Plugins