The JTS build chain uses Maven. Build commands are executed at the project root directory (this one).
Build JTS, with tests:
mvn clean install
Build JTS, no tests:
mvn clean install -DskipTests
Build jts-io-ora:
mvn install -Poracle
Build jts-io-sde:
mvn install -Parcsde
Build everything:
mvn install -Pall
Build Javadoc for core modules
mvn javadoc:aggregate
mvn eclipse:eclipseIt is convenient to define the following Run Configurations:
| Field | Value |
|---|---|
| Type | Java Application |
| Project | jts-tests |
| Main class | org.locationtech.jtstest.testrunner.JTSTestRunnerCmd |
| Program arguments | -files validate general |
| Working directory | ${workspace_loc:jts-tests/src/test/resources/testxml} |
| Field | Value |
|---|---|
| Type | Java Application |
| Project | jts-app |
| Main class | org.locationtech.jtstest.testbuilder.JTSTestBuilder |
| Program arguments (optional) | -geomfunc <classname> ... |
| VM args | -Xmx1000M |
| VM args (optional, for Mac) | -Dswing.defaultlaf=javax.swing.plaf.metal.MetalLookAndFeel |
| Working directory | Default |
JTS aims for 100% code coverage for unit tests.
There are two kinds of unit tests:
Used for verifying API code, internal data structures, and ancillary algorithms.
JTS provides a code-independent, declarative XML-based format for expressing geometric functional tests.
This format has the following advantages:
This format should be used for tests which involve large geometries, or which express fundamental geometric semantics of the JTS library.