Development

Project Site

The sourceforge project site is

sourceforge.net/projects/jstatcom

There is also additional documentation available from there under the Docs section.

Recruitment

Developers with a Java background are more than welcome to join the team. If you plan to take part in the JStatCom project, just send an email to the project admin or use the

Patch Tracker

to submit a suggested change.

API

JStatCom is constantly under development, but the current API should be stable. Binary compatibility with future versions is part of the development strategy.

Development Tools

Any Java development environment can be used. It must support the current JRE version for building and running applications and it should include a powerful Swing GUI building tool. For convenience, the jstatcom sourcepackage comes as an Eclipse project (with the .classpath and .project XML files) which can easily be imported to that IDE. A small selection of popular Java tools:

  • Eclipse, www.eclipse.org, together with the GEF, EMF, and VE plugins for Visual GUI creation, Open Source project sponsored by IBM
  • Netbeans, www.netbeans.org, Sun's Open Source Java IDE, freely available
  • JBuilder, www.borland.de/jbuilder, Borland's professional commercial Java development tool

In addition to a Java IDE, development of engine modules also requires a C/C++ compiler. On Windows the use of Microsoft Visual C++ .NET is recommended. On other plaforms the GNU compiler should be used. The sourcepackages contain makefiles for the GNU compiler and Visual Studio project files (.vcproj XML files).

Portability

JStatCom has been tested on Windows XP and Linux Suse 9.1, but all Java enabled platforms are supported by the Java part (base package). Because engine modules use native dlls, they pose restrictions on portability. However, if these engines are not used then this can be ignored. A few notes on the portability aspects of different engines:

Engine Supported Platforms Comments
R Engine (RStat) all platforms where the R package rJava is available (Windows, Linux, Unix, Mac) has been tested on Windows XP only, no jstatcom specific dlls are required therefore should run on all platforms where R runs with the rJava package, only a few platform specific environment settings are needed
Gauss Runtime Engine (GRTE) Windows, Linux Could also be ported to Solaris and AIX, because the GRTE is available for these platforms, requires compilation of the respective Java JNI wrapper and of the respective Gauss gcg file
Gauss Windows The interface uses operating system specific services to communicate with the Gauss process, not easily be ported to other OSses
Ox all platforms, which are supported by Ox console precompiled versions exist for Windows and Linux, source code for communications library is shipped, requires setting of OX3PATH variable
Matlab works with compiler versions 3, but not with current release 4 precompiled versions exist for Windows and Linux, source code for communications library is shipped
Stub (calling dlls without extra JNI wrapper) Windows, Linux precompiled versions exist for Windows and Linux, source code for communications library is shipped and can easily be compiled for Sun Solaris, other platforms require adjustment of assembler code section