TheTransitClock is a Maven multi-module project. From the repo root:
mvn install -DskipTestsThis builds every module and produces:
- Shaded executable JARs in
transitclock/target/— one permainclass underorg.transitclock.applications. The most relevant for production areCore.jar,GtfsFileProcessor.jar,SchemaGenerator.jar,CreateWebAgency.jar, andCreateAPIKey.jar. transitclockApi/target/api.war— the REST API.transitclockWebapp/target/web.war— the user-facing web UI.
Java 21 is required (enforced via <release>21</release> on
maven-compiler-plugin in each module pom). The build is regularly run
against Maven 3.6+; older versions are untested. There is no lint step.
For the full production runbook (database provisioning, DDL generation, config files, running each JAR, deploying the WARs to Tomcat), see docs/setup.md.
For test invocation and coverage, see the README.