BlueJ offers an extension API that allows third parties
to develop extensions to the environment. Extensions offer
additional functionality not included in the core system.
The API documentation for extension developers is at the
bottom of this page.
| A Simple GUI Builder |
(21 May 2013) |
| Description: |
'Simple GUI Extension' is an extension for fast GUI design, not only for beginners. It contains list of basic swing components which you can add using drag and drop. It is possible to set some properties and events via the properties table. It is also possible to set components' size and position through mouse dragging or to change foreground or bacground color via pop-up menu. Menu generator is also included. |
| Author: |
Tomáš Svatek, University of South Bohemia, České Budějovice, Czech Republic |
Web site : |
http://home.pf.jcu.cz/~gbluej/ |
| Class Card - A Better UML Extension |
(22 Jul 2008) |
| Description: |
An improvement over the original UML Extension, this one allows you to show more than one class display, and to move class displays around the screen. Available in English and German. |
| Author: |
Michael Steinhuber |
Web site : |
http://klassenkarte.steinhuber.de |
| A Multi-Project Workspace Handler |
(22 Jul 2008) |
| Description: |
This BlueJ extension allows you to easily manage (i.e. create, import/export and switch between) multiple BlueJ projects. Some neat features help you to auto-position package windows or to handle bunches of jar files economically (e.g. when correcting students' exercises). |
| Author: |
Manuel Haim |
Web site : |
http://multiproject.sf.net |
| Identifying the roles of variables |
(26 Jun 2008) |
| Description: |
The Roles of Variables BlueJ extension is based on Sajaniemi's Roles of Variables theory, which describes the common ways in which variables are used in programming. The extension allows users to annotate their programs with labels based on these roles, and uses an automated system to check whether the actual use of the variable is consistent with that role assignment.
The download is a zip file containing the extension JAR file ( roles_of_variables.jar) as well as documentation and source code. |
| Author: |
Craig Bishop and Colin Johnson (University of Kent) |
Download: |
rolesOfVariables.zip |
| CNU BlueJ Code Formatter |
| Description: |
CNU BlueJ formatter is a BlueJ extension that integrates Eclipse's code style formatting capabilities into BlueJ's editor. The formatter adds a "Format" button to the editor, and formats compiled source code according to a set of style properties specified in a properties file. These properties can be customized using a simple dialog interface accessible from BlueJ's Preferences option. For convenience, the formatter comes with an installation executable JAR file.
Note: Requires BlueJ 2.2.1 or later. |
| Author: |
Roberto Flores, Christopher Newport University |
Web site: |
http://cnubluej.pcs.cnu.edu/ |
| Objectdraw Invoker |
| Description: |
An extension to make it easier to work with the objectdraw library. If any class in a BlueJ class diagram extends the objectdraw Controller class, this extension adds a menu item to the class which will create an object, place it on the BlueJ object bench and invoke its startController() method. I.e. "run" it inside BlueJ rather than as an external Applet.
Note: Requires BlueJ 2.2.0 or later. |
| Author: |
Tom Murtagh (with help from Ian Utting's ACM Invoker code) |
Download: |
objectdrawinvoker.jar |
| Programming Lego NXT Robots from BlueJ |
| Description: |
A simple extension which compiles and deploys programs using the JeLOS operating system for Lego NXT robots from BlueJ. When you right-click on a class in the class
diagram you get a menu item which can be used to either just comile all
files or upload the program to the robot (and even run it). |
| Author: |
David Bowes, University of Hertfordshire |
Web site: |
http://homepages.feis.herts.ac.uk/~comqdhb/lego/bluej.php |
| Main Program Runner |
| Description: |
An extension to allow direct invocation of a main method. If a class contains a properly declared main method, this extensions adds a menu item "Run Main Method" which directly invokes it. This makes the main method much more obvious, if that suits your style, and also helps you get the declaration right; if it's not public static void main(String [] args) you won't see the menu item. |
| Author: |
BlueJ team (Ian Utting) |
Download: |
MainRunner.jar |
| SyntaxSourcePrinter |
| Description: |
Supports colour printing of source code from within BlueJ using the syntax colouring used in BlueJ's editor. This new version not only sends source code to printers, but also saves HTML or RTF to files, for inclusion in course notes or slides.
The extension adds a new "Print" menu item to the context menu of classes in the BlueJ Class Diagram. It obeys the colour settings in the file moe.defs.
The downloadable Jar file includes the source code of the extension, please tell Marc about any additions or improvements you make. |
| Author: |
Marc Seidemann |
Download: |
The 12 Oct 2007 version. |
| ACM Invoker |
| Description: |
An extension to make it easier to work with the ACM Java Task Force library. If any class in a BlueJ class diagram implements the acm.program.Program class, this extension adds a menu item to the class which will create an object, place it on the BlueJ object bench and invoke its start() method. I.e. "run" it inside BlueJ rather than as an external Applet.
Note: Requires BlueJ 2.2.0 or later. |
| Author: |
BlueJ team (Ian Utting) |
Download: |
ACMInvoker.jar |
| Submitter |
| Description: |
Allows submission of projects to specified address via email (including secure SMTP), ftp, http(s) or file copy. Highly configurable.
Note: There have been four maintenance releases since the major release on 16 Jan 2007. The first (2 Feb 2007) de-cluttered the preference panel and fixed a significant information leak in the https implementation. The second (12 Sep 2007) fixed a sever problem with email-based submission when using Java 6. The third (25 Sep 2007, which shipped with BlueJ 2.2.1) fixed a character-set problem with FTP passwords. The fourth (21 Oct 2008, which shipped with BlueJ 2.5.1) added support for a sortable isodate submission scheme parameter. |
| Authors: |
BlueJ team (Ian Utting, Damiano Bolla, Cecilia Vargas) |
| Documentation: |
Submitter documentation |
Download: |
The 21 Oct 2008 version . Install by overwriting the existing submitter.jar in your BlueJ installation with this new version. |
| Checkstyle |
| Description: |
Allows automated checking of coding styles. Coding styles can be specified flexibly in an external file. This is a major update to this extension, including:
- Now uses the latest Checkstyle release, v4.3
- Simpler one-jar installation
- Allows configuration files to be read from URLs in addition to local files
- The documentation has additional tips useful for lab-based or cloned setup
|
| Author: |
Rick Giles and Stephen Edwards |
Documentation: |
http://bluejcheckstyle.sourceforge.net/ |
Download: |
The latest version from sourceforge |
| 3D Environment Extension |
| Description: |
Env3d is a 3D engine written in Java aimed at students of computer
science. This engine makes it very easy to visualize objects and create
3D applications.
Using the BlueJ extension, students can literally create an object and
"drop" it into a graphical 3d environment. Texture mapping and model
loading (.obj format) are supported.
When used standalone, students can create animation and fully
interactive environment. An example of the "world-of-zuul" in 3D is
included.
This is the first release of env3d. Feedback and comments are very welcome. |
| Authors: |
Jason Madar, Capilano College, British Columbia, Canada |
| Web site : |
http://env3d.sourceforge.net |
| patternCoder: A Design Patterns Extension |
| Description: |
Provides a wizard which guides the user through the process of adding a Design Pattern or binary class relationship to a BlueJ project. The user can select a pattern or relationship and choose specific names for the component classes. A set of basic classes are then generated. The classes have sufficient code out-of-the-box to allow exploration of the behaviour with no additional coding. They can then be edited to meet the requirements of specific problems. A selection of patterns and relationships is provided, and other patterns can be defined using XML files and added into the extension. |
| Authors: |
Michael Nairn, Jim Paterson and John Haddow,
Bell College and Glasgow Caledonian University |
| Web site : |
http://www.patterncoder.org/ |
| A Class Wizard |
| Description: |
The "Class Wizard" enables BlueJ users
to quickly and easily create or edit classes and class'
components (attributes, methods, constructors, and
so on) using the syntax of UML. The Wizard can be used
before or after creating classes and editing their
source code in the BlueJ text editor.
Note: There are two versions of this extension,
depending on which version of Java you are using. |
| Authors: |
Korean BlueJ Users Group (KBUG) |
Download: |
ClassWizard.jar for
Java 5
ClassWizard_for1_4.jar for
Java 1.4 |
| UML Extension |
| Description: |
Displays a simple popup for a BlueJ class in the
form of a UML Class icon. Details of what will be displayed,
and the precise syntax used can be configured via the
preferences panel, or the BlueJ properties files. |
| Authors: |
BlueJ team (Ian Utting) |
| Documentation: |
Here |
Download: |
UMLextension.jar (if
necessary, right-click and 'Save...') |
| PMD as a BlueJ extension |
| Description: |
The PMD Extension for BlueJ is a wrapper for the
open source code analysis utility PMD,
which finds unused code, empty blocks, and all that
sort of thing.
Of course, it's very clunky at this point, but you
get the idea - students will create code that has
basic problems like unused variables and whatnot,
and PMD will find those for them. Right now the extension
only checks the basic and unused
code PMD rules.
The first release is now available via the PMD web
site - it's just the PMDExtension.jar file that you
can download and drop in your bluej/lib/extensions/
directory. |
| Authors: |
Tom Copeland |
| Web site : |
http://pmd.sf.net/ |
| Exporter |
| Description: |
Exports a BlueJ project in a form which can be used
in other IDEs. Currently, this extension exports the
project's source code, and creates an ant build
file. The resulting (non-BlueJ) project can then be
built using ant on the command line, or as a project
in recent versions of NetBeans,
which use ant build files to store project information.
If you use another IDE, please consider adding support
for it to the Exporter extension. See the Exporter
developers site, where source code is available. |
| Authors: |
BlueJ team Kent (Damiano Bolla, Ian Utting) |
| Documentation: |
Here |
Download: |
exporter.jar (if
necessary, right-click and 'Save...') |
| Application Launcher |
| Description: |
The Application Launcher Extension for BlueJ (AppLaunch
for short) was created with the intention of allowing
students to quickly run pre-configured applications.
AppLaunch is meant to save time in developing student
software, as existing applications can be coupled with
BlueJ. It allows programs to automatically start at
BlueJ startup or closing, or to be selectable from
a menu. Configuration of programs can
be done while running BlueJ, and once set, further modification can be
disabled by the administrator. |
| Authors: |
Jonathan Chapman, Appalachian State University |
| Web site : |
Offline for the moment, please try later |
| BlueJScript |
| Description: |
The BlueJScript extension is a JavaScript interpreter
embedded in a BlueJ extension. You can use it to rapidly
prototype your own extensions, or to produce truly
interactive HTML-based BlueJ tutorials like Purple
Cow or BlueJScript
Shapes To try them out, download and install the
extension, then download and unzip a tutorial and open
it as a BlueJ project. (Note: the BlueJScript Shapes
tutorial contains audio, and won't work on a system
not equipped to handle Java audio). |
| Authors: |
BlueJ team Kent (Damiano Bolla, Ian Utting) |
| Documentation: |
Documentation
for script authors |
Download: |
bluejscript.jar (if
necessary, right-click and 'Save...') |
| BlueJ Extension Manager |
| Description: |
The BlueJ extension manager checks whether updates are available for any installed extensions.
It can also check for availability of new extensions,
and lets you install or delete extensions.
Note: prior to BlueJ 3.0.6, this extension also checked for updates to BlueJ itself. This function is no longer available, but users can find out whether a newer version of BlueJ is available using the Help/Check Version menu item in BlueJ. |
| Authors: |
BlueJ team Kent (Ian Utting, Damiano
Bolla) |
| Documentation: |
Documentation for users and documentation
for extension writers |
Download: |
extmgr.jar (if
necessary, right-click and 'Save...') |
| CEB : Class Evaluator for BlueJ |
| Description: |
Evaluates classes based on Chidamber and Kemerer metrics.
This will assign number values for qualities such as
coupling and cohesion. |
| Author: |
Korean BlueJ Users Group (KBUG) |
| Documentation: |
http://www.bluej.or.kr/ (including
installation instructions) |
Download: |
ceb_1_0.jar |
| Jeliot 3 |
| Description: |
Jeliot 3 is a Program Visualization application from
the University of Joensuu, Finland, and the Weizmann
Institute, Israel. See the Jeliot
web page. This extension integrates Jeliot in BlueJ. |
| Authors: |
Antoine Pineau, Niko
Myller, Andrés
Moreno and the Jeliot
team |
Documentation
and download: |
http://cs.joensuu.fi/jeliot/downloads/bluej.php |
| Remote File Manager |
| Description: |
Extension to open, edit, and save projects from/to
a server with a sftp daemon without having to know how
to use Unix. The extension tries to mimic traditional
file dialogs. |
| Author: |
Jonathan Chapman,
Appalachian State University |
Documentation
and download: |
http://www.cs.appstate.edu/projects/rfm/ |
| Sequence Diagram Editor |
| Description: |
An editor that allows the manual creation of sequence
diagrams, and links in with BlueJ. Updated September 2006 to work with more recent versions of BlueJ (my fault, not theirs) by Ian Utting. |
| Authors: |
Matilda Östling, Jürgen Börstler |
| Documentation: |
(included in download) |
Download: |
SD_Editor.zip (includes
documentation and source code) |
Extensions are installed by placing the extension jar file
into an extension directory. BlueJ has three separate locations
for extensions, each giving the extension a different scope.
The locations are: