Examples - Maple Help

Java OpenMaple Examples

A Simple Example

 • The following Java class starts a Maple session, evaluates a single expression, and then exits.  It uses the following classes: Engine, EngineCallBacksDefault and MapleException.
 • For general instructions for running Java OpenMaple applications, see running.

 import com.maplesoft.openmaple.*; import com.maplesoft.externalcall.MapleException; class test { public static void main( String args[] ) { String[] mapleArgs = { "java" }; Engine t; int i; try { t = new Engine( mapleArgs, new EngineCallBacksDefault(), null, null ); t.evaluate( "int( x,x );" ); } catch ( MapleException e ) { System.out.println( "An exception occurred\n" ); return; } System.out.println( "Done\n" ); } }

 • This example can be copied directly from this page and pasted into a file named test.java (it is also available in the samples/OpenMaple/Java/simple directory in your Maple installation).
 • In the following examples, assume that  refers to the directory in which your Java development tools are installed.  If your Java development tools are in your default path, you don't need to to worry about specifying the tool's location.
 • You will need to know your Maple installation location.  We will refer to this location as .  You can determine your installation location by calling kernelopts( mapledir ) in Maple.

Compiling the Java file

 • We first need to compile the java source file into a class file.

Windows

 \javac -classpath "\java\externalcall.jar;\java\Maple.jar" test.java

Apple OS X and Linux

 /javac -classpath "/java/externalcall.jar:/java/Maple.jar" test.java

 • There should now be a file called test.class in the current directory.

Executing

 • Before this example can be executed, the Java Virtual Machine must be told where to look for the Java OpenMaple native library.  This library connects Java to Maple.  It is located in the binary directory of your Maple installation.  To determine which directory this is on your machine, call kernelopts( bindir ) in Maple.   We will refer to this location as
 • To tell the Java Virtual Machine to look in this directory, you need to add  to a platform specific environment variable.  In addition on Apple OS X and Linux, the MAPLE environment variable needs to be set to the value  we defined above.

Windows

 • In Windows, you need to add  to the PATH environment variable

 set PATH=%PATH%;

Linux

 • On Linux, you need to add  to the LD_LIBRARY_PATH environment variable and set the MAPLE environment variable.

 export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:" export MAPLE="" Apple OS X  • On Apple OS X, you need to add to the DYLD_LIBRARY_PATH environment variable and set the MAPLE environment variable.  export DYLD_LIBRARY_PATH="$DYLD_LIBRARY_PATH:" export MAPLE=""

 • As with the compiler, the Java Virtual Machine must have the Maple.jar and externalcall.jar files added to the classpath, along with the directory containing the test.class file created above. Once again, using the -classpath command-line argument is recommended. This example assumes that the test.class file is stored in the current directory.

Windows

 java -classpath "\java\externalcall.jar;\java\Maple.jar;." test

Apple OS X and Linux

 java -classpath "/java/externalcall.jar:/java/Maple.jar:." test

 • If all went well, executing the line above should produce the following output.

 1/2*x^2 Done

 • This brief example can be found in the samples/OpenMaple/Java/simple directory.  More interesting and complex examples can be found in the subdirectories of samples/OpenMaple/Java.