Note: This page lets you download our command line tools
See the software page for the
new Eclipse-based Object Teams Development Tooling.
The current implementation of ObjectTeams/Java involves software
with different legal status.
- The runtime system uses
which is under the LGPL.
- The compiler builds on software that is under the
Sun community source license.
Thus the compiler is available for evaluation purposes only.
If you want access to the compiler source code, register
and contact us.
Everything else is under LGPL and we are working on a new compiler
which will be completely available in source code under LGPL, too.
Final version: ObjectTeams/Java v0.6.1c
You need Java installed (>= jdk 1.4.0).
Starting from v0.5.4 we include a runtime version
of JMangler 2.0.3
in our distribution.
- Download the ObjectTeams/Java installer (~ 1.3MB).
- On windows you might also want to download this tiny
batchfile (into the same directory).
- Run the interactive installer:
- java -classpath directory_where_Install.class_is_stored Install
- double click the batch file
- Have fun and send feedback to us.
See file CHANGES.txt
for improvements between
The ObjectTeams/Java compiler and runtime environment
generally follow our language definition.
Limitations: As of version 0.6.1b the following are, however, not yet implemented:
- § 2.3(b)
- This rule is not fully implemented, i.e., a role constructor
can not invoke
- § 5.3:
- Implicit Team activation is only implemented for Team methods,
not for externalized roles.
- Overriding of Team-level methods:
- Overriding for Team-level methods still has some restrictions.
super() does not work in this context
if signatures contain role types.
Team constructors are not affected by this restriction.
- Private accross classes
- There is some bad interaction between implicit inheritance and
accessing private role features from the team and vice versa.
The compiler will give a warning here.
- Nesting etc.
- Team nesting etc. are not fully supported.
A role class may currently not be a Team nor the base of another
It is, however, not a problem for a Team class to serve as a base in
a role binding of another Team.
And other restrictions that we don't know of ...