## org.h2.build
Class Build

    java.lang.Object
      org.h2.build.BuildBase
          org.h2.build.Build

    public class Build

extends BuildBase

The build definition.

Nested Class Summary

Nested classes/interfaces inherited from class org.h2.build.BuildBase
`BuildBase.FileList, BuildBase.StringList`

Field Summary

Fields inherited from class org.h2.build.BuildBase
`quiet, sysOut`

Constructor Summary
`Build()`

Method Summary
`void` `benchmark()` Run the benchmarks.
`void` `clean()` Clean all jar files, classes, and generated documentation.
`void` `compile()` Compile all classes
`void` `coverage()` Run the Emma code coverage.
`void` `docs()` Create the documentation from the documentation sources.
`void` `download()` Download all required jar files.
`protected java.lang.String` `getLocalMavenDir()`
`void` `installer()` Create the h2.zip file and the Windows installer.
`void` `jar()` Create the regular h2.jar file.
`void` `jarAndroid()` Create the file h2android.jar.
`void` `jarClient()` Create the h2client.jar.
`void` `jarJaqu()` Create the file h2jaqu.jar.
`void` `jarSmall()` Create the file h2small.jar.
`void` `javadoc()` Create the Javadocs of the API (including the JDBC API) and tools.
`void` `javadocImpl()` Create the Javadocs of the implementation.
`static void` `main(java.lang.String... args)` Run the build.
`void` `mavenDeployCentral()` This will build a release of the H2 .jar file and upload it to file:///data/h2database/m2-repo.
`void` `mavenInstallLocal()` This will build a 'snapshot' H2 .jar file and upload it the to the local Maven 2 repository.
`void` `offline()` Build the jar file without downloading any files over the network.
`void` `spellcheck()` Just run the spellchecker.
`void` `switchSource()` Switch the source code to the current JDK.
`void` `test()` Compile and run all tests.
`void` `testNetwork()` Test the local network of this machine.
`void` `testSysProperties()` Print the system properties
`void` `uploadBuild()` This build target is used for the automated build.
`void` `warConsole()` Build the h2console.war file.

Methods inherited from class org.h2.build.BuildBase
`all, args, beep, copy, delete, delete, download, downloadUsingMaven, exec, execScript, files, getJavaSpecVersion, getSHA1, getStaticField, getStaticValue, jar, java, javac, javadoc, mkdir, print, println, projectHelp, readFile, replaceAll, run, writeFile, zip`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### Build

    public Build()

Method Detail

### main

    public static void main(java.lang.String... args)

  Run the build.

  Parameters:
    `args` - the command line arguments

### benchmark

    public void benchmark()

  Run the benchmarks.

### clean

    public void clean()

  Clean all jar files, classes, and generated documentation.

### compile

    public void compile()

  Compile all classes

### coverage

    public void coverage()

  Run the Emma code coverage.

### switchSource

    public void switchSource()

  Switch the source code to the current JDK.

### docs

    public void docs()

  Create the documentation from the documentation sources. API Javadocs are created as well.

### download

    public void download()

  Download all required jar files. Actually those are only compile time dependencies. The database can be used without any dependencies.

### installer

    public void installer()

  Create the h2.zip file and the Windows installer.

### jar

    public void jar()

  Create the regular h2.jar file.

### jarAndroid

    public void jarAndroid()

  Create the file h2android.jar. This only contains the embedded database, plus the H2 Android API. Debug information is disabled.

### jarClient

    public void jarClient()

  Create the h2client.jar. This only contains the remote JDBC implementation.

### jarSmall

    public void jarSmall()

  Create the file h2small.jar. This only contains the embedded database. Debug information is disabled.

### jarJaqu

    public void jarJaqu()

  Create the file h2jaqu.jar. This only contains the JaQu (Java Query) implementation. All other jar files do not include JaQu.

### javadoc

    public void javadoc()

  Create the Javadocs of the API (including the JDBC API) and tools.

### javadocImpl

    public void javadocImpl()

  Create the Javadocs of the implementation.

### mavenDeployCentral

    public void mavenDeployCentral()

  This will build a release of the H2 .jar file and upload it to file:///data/h2database/m2-repo. This is only required when a new H2 version is made.

### mavenInstallLocal

    public void mavenInstallLocal()

  This will build a 'snapshot' H2 .jar file and upload it the to the local Maven 2 repository.

### offline

    public void offline()

  Build the jar file without downloading any files over the network. If the required files are missing, they are are listed, and the jar file is not built.

### spellcheck

    public void spellcheck()

  Just run the spellchecker.

### test

    public void test()

  Compile and run all tests. This does not include the compile step.

### testSysProperties

    public void testSysProperties()

  Print the system properties

### testNetwork

    public void testNetwork()

  Test the local network of this machine.

### uploadBuild

    public void uploadBuild()

  This build target is used for the automated build. It copies the result of the automated build (including test results, newsfeed, code coverage) to the public web site.

### warConsole

    public void warConsole()

  Build the h2console.war file.

### getLocalMavenDir

    protected java.lang.String getLocalMavenDir()

  Overrides:
    `getLocalMavenDir` in class `BuildBase`