Mathematica Projects


Mathematica projects can be created by the New Project wizard. However, any project in the Workbench can work with Mathematica. If you do this it may be beneficial to add a Mathematica nature to a project, as demonstrated in the project resources section.

The New Project wizard can make two different types of projects: basic projects and application projects. The differences are the layout of files and initialization for a launch.

Basic Projects

Basic projects are a lightweight type of project that is just a collection of Mathematica source files. They do not necessarily have any particular structure. They do not have to be Mathematica packages.

When a launch is carried out in a basic project, all source files in the project are often loaded automatically. You can turn this off, either by setting a file property or by adding an execution build command.

Application Projects

Application projects are more structured projects that are designed to hold Mathematica applications. These are the standard way to provide code, notebooks, stylesheets, and palettes to extend Mathematica. They can be installed so that Mathematica can load and use them.

The recommended layout for an application project is to have a copy of the application inside the project. This is demonstrated below.

You can learn more about this in the section on Mathematica application projects.

J/Link Projects

J/Link projects are projects that combine both Mathematica and Java code, using the J/Link toolkit. The Workbench provides special support to work with this type of project, for example, providing wizards to create them and supporting debugging of both the Java and the Mathematica code. More information can be found in the section on J/Link projects.

Mixed Projects

One of the strengths of the Wolfram Workbench is that it allows you to work with projects of different languages and flavors. Many types of projects are already supported, for example, application, J/Link, and webMathematica projects. However, many other types of projects can also be made simply by mixing the resources in a common project. For example, projects that use C/C++ or TeX could be combined with Mathematica. If you do this it may be beneficial to add a Mathematica nature to a project, as demonstrated in the project resources section.