Developer Components
Developing with Eclipse |
The Eclipse Integrated Development Environment (IDE) is an open-source platform that allows developers to write and maintain code in a customizable workspace. Though the IDE is JAVA-based, the Eclipse community has created plug-ins for many programming languages that assist with automatic code-completion, debugging, syntax checks, and more. With customizable views—called perspectives in Eclipse—the developer also has great control over what can be seen at-a-glance.
Basis provides an Eclipse plug-in (BDT) that provides features that are useful for BBj developers such as code syntax checking, code completion for BBj objects, and direct execution of BBj programs from Eclipse.
Excellware has also developed a Dynamo Tools plug-in for Eclipse. This plug-in increases efficiency when using Dynamo Tools. This includes a variety of code completion features for called routine argument lists, methods for Dynamo Tool object, template field names, line labels, direct links to online documentation, etc. Note that the Dynamo Tools plug-in not only supports Dynamo Tools objects, called routines, and template field names, but also does the same for the Dynamo ERP product, as well as your own called routines and data structures stored in the Dynamo Tools data dictionary.
For those new to Eclipse, helpful tutorials can be found at tutorialspoint.com, vogella.com, and, of course, the Eclipse community.
Although the layout can be fully customized, here is a typical Eclipse layout using the BDT perspective.
Installation
The version of BBj, Basis Eclipse Plugins, and Dynamo Tools Plugin are very dependent on the Eclipse family installed. Although you can easily install multiple versions of Eclipse on a workstation, it is more difficult to install and configure multiple versions of BBj, running at the same time. Note that these are the only versions of Eclipse that are supported. Automatic upgrading of Eclipse to a newer version is not recommended.
Note that if you have installed an earlier version of the Dynamo Tools plugin, then we recommend removing the plugin and re-installing, versus upgrading.
Eclipse Family | Java Version | BBj Version | BDT Install URL | Dynamo Tools Install URL |
---|---|---|---|---|
2022-06 | 11 or 17 | 22.XX | https://plugins.basis.cloud/composite/22xx
|
https://dl.excellware.com/plugins/22
|
2024-03 | 21 | 24.01+ | https://plugins.basis.cloud/composite/24xx
|
https://dl.excellware.com/plugins/24
|

Follow the instructions provided by Basis here.
-
Install java - Note that although BBj/BDT supports java 17 when using BBj version 24+, the Dynamo Tools plugin requires java version 21. You can download java 21 at https://adoptium.net/
-
Download and install Eclipse on your workstation as described in the above link. Note that running Eclipse on a shared server is not recommended.
-
Configure Eclipse - The Eclipse download includes java. However, the Dynamo Tools plugin requires java version 21 when used with BBj version 24. Edit the eclipse.ini file as described in the Basis document referenced above, to set the -vm argument to the path to the java 21 bin folder:
-vm
C:\Program Files\Eclipse Adoptium\jdk-21.0.2.13-hotspot\bin -
Start Eclipse and verify that it is using java version 21 as described in the Basis document referenced above. When launching Eclipse for the first time, you will be prompted to enter a eclipse workspace folder. We recommend using a shorter name such as
"ews"
instead of"eclipse-workspace"
. So for Windows you could useC:\Users\[USERNAME]\ews
. We also recommend checking the box to use this workspace without prompting when launching eclipse. You can have multiple workspaces if needed and switch workspaces using the eclipse option on the File menu. -
Download and install BBj on the workstation that will be used to run Eclipse. Note that a local copy of BBj is required even when the application will be deployed to a server. You can exclude the Basis License Manager component, and configure the local version of BBj to checkout BBj licenses from your production or development Basis License Manager. The recommended installation folder is C:\u\basis\bbj for Windows PC's.
-
Install the Basis BDT plugin as described in the Basis document referenced above. Restart Eclipse as prompted.
-
If installing version 24, install one package required by the Dynamo Tools plugin using the URL https://download.eclipse.org/technology/swtbot/releases/4.1.0/. Although there are 24 or more components, some will not be installed which is OK. Proceed with the installation to install all that will install, then restart Eclipse as prompted.
-
Install the Dynamo Tools plugin. Follow the same steps to install the Dynamo Tools plugin using the URL from the table above. Restart Eclipse as prompted.

- After Eclipse is re-launched, you will be prompted to locate the bbj installation directory. For Windows, the recommended location is
C:\u\basis\bbj
. - When Eclipse is started, a "Welcome Page" is displayed with helpful links. When you close the Welcome Page, the default perspective is displayed. A perspective defines the organization of windows and tabs within the Eclipse framework.
The Basis plugins provide a BDT perspective useful when developing and testing code, and an Enterprise Manager perspective useful when running the Basis Enterprise Manager within the Eclipse framework, much like when run using a browser. Each perspective has an icon that can be clicked to quickly refresh the Eclipse desktop to show the windows and tabs included on the perspective.
Either click on the Open Perspective iconlocated near the top right corner, or select Window -> Perspective -> Open Perspective -> Other. Select the BDT perspective. You will be prompted to locate the BBj installation, typically
C:\u\basis\bbj
. When the BDT perspective is active, you will see BDT Explorer in the leftmost panel as shown below:
Repeat this process to open the Enterprise Manager perspective. -
Switch back to the BDT perspective by clicking on its icon as show below.

The Dynamo Tools plugin provides several useful features when using Eclipse. These include:
- Field Name code completion based on the Dynamo Tools Data Dictionary
- Called Routine arguments code completion
- Automates inserting the Dynamo Tools error routine lines into a program
- Code Completion for line labels
The Dynamo Tools plugin is configured using Window -> Preferences -> Dynamo Tools. Here you specify which company codes you will be using as well as other preferences.
In order to provide Field Name code completion, you must configure the Dynamo Tools plugin with the two letter Dynamo Tools company codes that you use. Note that you also need to configure the server where you maintain the Dynamo Tools Data Dictionary so that it makes it available to Eclipse. See Dynamo Configuration Maintenance for more details.
Click on the Dynamo Tools Plugin Preference icon, then click "Add" and enter each two character company code that you will be using.
Click the "Configure Project Specific Settings" to indicate which company libraries should be used for the active BBj Project.
- Use
DT_Y$
for the project -Check this box is your application uses its ownY$
variable with different contents than the Dynamo ToolsY$
variable. When checked, called argument code completion that includesY$
will be replaced withDT_Y$
instead.

Most software development projects for a business involve multiple developers, often working from multiple locations. Projects like these typically use a repository to store source code, shell scripts, configuration files, images, web pages, web page style sheets, documentation, etc. Although there are many source code control systems available, we will use a 'git' based source code control system for this example. Eclipse includes support for git without the need of an additional plugin, and support for many other source code control systems can be provided by installing the appropriate plugin.
You can manage a git based repository on an in-house server, a cloud server, or by using a public service such as github.com. Microsoft's Team Foundation Server (TFS) also supports git commands and works with Eclipse without any additional plugin.
In this example, we will create a BBj Project using github, but the process is the same for any git based repository, only the URL would be different. We will also create a local project where the source code files and other project files are stored locally on your computer, and not shared or made available to others, nor stored in a source code control system.
- Click File -> Import -> Git -> Projects from Git then "Next".
- Highlight "Clone URI" then "Next".
- Paste the URI to the git based source code repository and enter your repository login and password, then click "Next". Do not click "Finish" on this page.
- On the Branch Selection page, select/deselect the branches that you will be working on locally, then click "Next".
- On the Local Destination page, change the Destination Directory to be the Eclipse workspace folder followed by the Project Name, i.e.,
C:\Users\myname\ews\Dynamo
. The Project Name should not contain spaces. Note that the project directory must not already exist. - On the page to select the import wizard, mark the option to "Import using the New Project wizard", then click "Finish".
- On the Select a Wizard page, click BDT, highlight "BBj Project", then click "Next".
- Enter the same Project Name as specified above. Although optional, it is a best practice to check the Static Type Checking and Static Type Warnings boxes. Click "Finish"

A local BBj Project can be used for experimenting with and testing code, learning BBj and Dynamo Tools. A local project is not shared with others nor pushed to a code repository.
- Click File -> New -> BBj Project
- Enter a project name such as "sandbox". The best practice is to Check Static Type Checking and Static Type Warnings. Click "Finish".
Coding Features
Description | Usage | ||||||||
Content Assist (Ctrl+Shift+Space) |
Used for the suggestions and auto-fill features of the plug-in. This feature is contextual so it will only make suggestions that work with what is already entered into the code editor at the cursor position. If nothing is entered on the editor line at the current cursor position—such as at a blank line—a list of all available entries will be presented with this keyboard shortcut. In either case, a search box is also presented to easily find what is needed.
|
||||||||
Show Routine Help (Alt+F1) |
Placing the cursor on a called routine and using this shortcut to open Excellware, Inc. a detailed documentation page for that routine in a browser. |
Examples of Dynamo Tools Plugin Code Completion