The Wiki will be offline Monday, November 20, for upgrade between 10:00am ET and 5:00pm ET.
Hitachi Vantara Pentaho Community Wiki
Added by Marc Batchelor, last edited by Jens Bleuel on Apr 17, 2008  (view change)


Enter labels to add to this page:
Wait Image 
Looking for a label? Just start typing.

The Pentaho BI Platform code is housed at svn:// in a Subversion repository. If you have no experience with Subversion, have no fear - there's an online book at

The Pentaho projects in Subversion are:

We've tried diligently to keep our project structures simple for ourselves and the sanity of our community. Below you will find descriptions of the projects that we will be discussing throughout this document:

  • pentaho
  • pentaho-data
  • pentaho-solutions
  • pentaho-preconfiguredinstall
  • pentaho-standalone

We will not be discussing the Pentaho client tools in this document:

  • pentaho-cubedesigner
  • pentaho-actionsequence-plugin
  • pentaho-commons
  • pentaho-designstudio
  • pentaho-designstudioIDE
  • pentaho-metadata
  • pentaho-reportdesigner
  • pentaho-reportwizard

The pentaho Project

The pentaho project holds the source code, resources and project setting for the Pentaho BI platform. This is the project that you will browse and step through to learn about the platform code and architecture.

Directory/File Description
/pentaho Root directory of source tree.
/cobertura Contains libraries used to determine what percentage of code is covered by unit tests.
/scripts Contains startup scripts used when building the Preconfigured Install
/server Source tree for server code.
/third-party Contains the lib directory; holds all third party libraries necessary for compilation and building.
.classpath Eclipse file for setting the project classpath.
.project Eclipse file describing the project.
build.xml Ant build file for Pentaho project. Properties for building the Pentaho project; override properties in this file by creating an file in the same directory, and adding those properties you want to override. Properties file used by the deployment_build.xml
deployment_build.xml Build file that contains targets used to build appserver specific deliverables. It is used by build.xml and is delivered as part of the j2ee deployments. Properties file used by dev_build.xml
dev_build.xml Build file that contains targets use to build development application server. It is used developers for local development
excludejars.generic Text file listing those jars that should not be included in the .war file for the tomcat-war target in the build file.
excludejars.jboss Text file listing those jars that should not be included in the .war file for the jboss-war target in the build file.

The pentaho-data Project

The Pentaho BI Platform ships with a set of default databases (using Hypersonic SQL) to hold the necessary repositories for several feature components and subsystems.  In order to get these parts of the platform up and running you will need these repositories. This data exists under the module 'pentaho-data'. Pentaho-data also includes startup and shutdown scripts for the databases. 

Directory/File Description
/pentaho-data Root directory of database tree.
/hibernate Holds the platform repository scripts for Hypersonic SQL.
/quartz Holds the Quartz scheduler scripts for Hypersonic SQL.
/sampledata Holds the sample data scripts for Hypersonic SQL.
/shark Holds the Shark workflow scripts for Hypersonic SQL.
start_hypersonic.bat Startup batch file for Windows platform; used to start the databases on Windows. Startup batch file for *nix platform; used to start the databases on *nix.
stop_hypersonic.bat Shutdown batch file for Windows platform; used to shutdown the databases on Windows. Shutdown batch file for *nix platform; used to shutdown the databases on *nix.
The 'pentaho-data' module is structured to be a standalone component that acts as a database server. The scripts provided in the project start and shutdown the Hypersonic databases. The scripts rely on the Hypersonic jdbc classes being available in a /lib directory under the 'pentaho-data' directory. So in order to get these scripts running properly, you will need to place the Hypersonic driver jar where the scripts expect it as follows
  1. Create a directory named lib under the 'pentaho-data' directory.
  2. Copy the Hypersonic jdbc driver .jar file (hsqldb.jar) into the lib directory. We recommend that you retrieve this file from the third-party/lib directory in the 'pentaho' project, as that one will be sure to be the right version.

The pentaho-preconfiguredinstall Project 

The preconfigured-install project holds a complete JBoss application server, tuned and configured for running the Pentaho BI platform code. For details on the JBoss application server directory structure, see the JBoss Wiki

The pentaho-solutions Project

If your goal is to set up the platform as a web application, or simply have a starting point for your own solutions, you will want to get the latest samples from Subversion. Setting up the samples is a relatively trivial exercise, and provides a great way to test the various components in your deployment.

The samples are located under the project named "pentaho-solutions". The pentaho-solutions project consists of a set of samples that demonstrate several component features of the platform and a set of clean configuration files.

To run the samples, you will also want to download the default Hypersonic databases. See the previous section for instructions on getting the databases.

Directory/File Description
/pentaho-solutions Root directory of solution tree.
/admin Root directory for the administrative samples.
/samples Root directory for sample solution.
/system The system directory contains all platform and component configuration information.
/test Root directory for test solution.
Download the samples to a directory that is a sibling of your application server's root directory. The "pentaho-solutions" directory will be found by the web application without configuration changes as long as it is deployed as the sibling to the app server as described above.

The pentaho-standalone Project

The pentaho-standalone folder has a simple solution, the platform library and dependencies, and the code for a Java application that runs the platform on its own, without a J2EE application server.

Directory/File Description
/resource The resource directory holds the solution files for our example. These files are very similar to those that are included with our demo. There are two action sequences in our solution, 'Hello World' and 'Simple Report'. If you browse the resource/solution directory, you will see the files for the action sequences.
/src The src directory holds the source code for executing the platform as a standalone Java application.
/.classpath Eclipse file for setting the project classpath.
/.project Eclipse file describing the project.
/build.xml Ant build file for Pentaho project.


Quick Links For This Document

The descriptions above for design studio IDE's don't match there names though it should be obvious to anyone which is which  (ex. pentaho-designstudioIDE-linux - essentially eclipse with a build file that will install the pentaho action-sequence-plugin and splash screen in a mac environment).

Comment: Posted by David Stauffer at Apr 16, 2008 09:52

I think this page should not be number 2.  I think it should be after the description of how to access the repository.

Comment: Posted by Dale Seng at Aug 25, 2008 11:53

The link to pentaho-preconfiguredinstall and pentaho do not work 

Comment: Posted by yepeng at Sep 08, 2008 01:14