Difference between revisions of "Building PCGen"

From PCGen Wiki
Jump to: navigation, search
(Migrate to the Gradle build)
(Indicate gradle 2 does not work)
Line 7: Line 7:
  
 
* Java Development Kit (aka Java SDK or JDK). You should use the latest version (update) of the JDK 6.0 available for download from [http://www.oracle.com/technetwork/java/javase/downloads/index.html here]. At the time of writing this was Java SE 6 Update 45. Java 7 will also work, but no 1.7 specific features should be used in the code just yet. Other JDKs might work, but no one has tried.
 
* Java Development Kit (aka Java SDK or JDK). You should use the latest version (update) of the JDK 6.0 available for download from [http://www.oracle.com/technetwork/java/javase/downloads/index.html here]. At the time of writing this was Java SE 6 Update 45. Java 7 will also work, but no 1.7 specific features should be used in the code just yet. Other JDKs might work, but no one has tried.
* Gradle 1.12 (or later) from [http://www.gradle.org/ here]. Gradle is fully cross-platform Java based build tool. See [[Gradle]] section for further details
+
* Gradle 1.12 (not later - we know Gradle v2 does not work for us) from [http://www.gradle.org/ here]. Gradle is fully cross-platform Java based build tool. See [[Gradle]] section for further details
 
* You will also need the latest version of the PCGen source code available from SVN. See [[Subversion Setup]] for details.
 
* You will also need the latest version of the PCGen source code available from SVN. See [[Subversion Setup]] for details.
  

Revision as of 07:36, 7 September 2014

Building PCGen from the command line

This process uses the Gradle tool, you need the following software packages:

  • Java Development Kit (aka Java SDK or JDK). You should use the latest version (update) of the JDK 6.0 available for download from here. At the time of writing this was Java SE 6 Update 45. Java 7 will also work, but no 1.7 specific features should be used in the code just yet. Other JDKs might work, but no one has tried.
  • Gradle 1.12 (not later - we know Gradle v2 does not work for us) from here. Gradle is fully cross-platform Java based build tool. See Gradle section for further details
  • You will also need the latest version of the PCGen source code available from SVN. See Subversion Setup for details.

Open a command window and change to the root directory/folder where you installed the PCGen source code. There should be a file called build.gradle there.

Type gradle at the command prompt. This will make sure you have a clean start and then build the pcgen.jar file. You can start pcgen.jar, pcgen.exe or pcgendev.sh to run it or manually run the jar file using a command line like

java -Xmx1024M -jar pcgen.jar

To generate the JavaDocs use gradle javadoc. To run all the tests use gradle slowtest (which can take a while).

Typing the command

gradle

will clean the project, build the code and run a small selection of tests. Typing the command

gradle slowtest

will build the code and run the full test suite and produce a report.

Using Eclipse to build PCGen

You can build PCGen from within Eclipse. It is configured by default to use the gradle dependencies however you will need the "Gradle Integration for Eclipse" plugin which can be installed free from the Eclipse Marketplace.

Once installed, Eclipse will share the jars as specified in build.gradle. You can also acces gradle tasks from within Eclipse using the "Window > Show View > Other" menu and then selecting "Gradle Tasks".

Running and debugging

  1. Open the PCGen project.
  2. Open the Run dialog by right-clicking on the PCGen project and selecting Run As > Run Configurations
  3. Select the Java Application node.
  4. Press the New button for a new configuration. Edit by field, thus:

Name -> PCGen

Main class -> pcgen.system.Main

VM arguments (Arguments tab) -> -Xmx1024M

  1. Press Apply to save the configuration.
  2. Press Run to start PCGen.

You can also run a single test by right clicking on the test and selecting Debug > JUnit Test. This is a great way to track through a bug too.

Using IDEA to build PCGen

You can build PCGen from within IDEA. You will need to do a little bit of setup first though:

  1. Go to the Window > Tool Windows > Ant Build. Press the [+] button to add a build file.
  2. Navigate to and select the build.xml Ant script in the root of the PCGen project tree. Press Ok.

You can now select any Ant target you wish. Particularly helpful are the build and fetch-data targets.

Running and debugging

NB - IDEA will build the software sufficient for running and debugging within the IDE automatically just by following these step. This is not the same as the build from the Building section, above, which builds the software suitable for command-line use.

  1. Open the PCGen.ipr project file.
  2. Get the Run/Debug Configurations dialog with Run > Edit Configurations from the menu bar.
  3. Select the Application tab.
  4. Press the [+] button for a new configuration. Edit by field, thus:

Name -> PCGen

Main class -> pcgen.system.Main

  1. Uncheck Display settings before running/debugging.
  2. Press Ok.

You can now run PCGen with the green right-pointing triangle on the toolbar and debug with the green right-facing beetle on a blue diamond. Or just use the Run menu.