clickhouse-java is a multi-module Maven repository for ClickHouse Java clients and drivers.
Main modules:
clickhouse-data: shared data types and low-level conversion utilitiesclickhouse-clientandclickhouse-http-client: legacy v1 client stackclient-v2: current HTTP client implementationclickhouse-jdbcandjdbc-v2: JDBC drivers and compatibility layersclickhouse-r2dbc: R2DBC integrationpackages/clickhouse-jdbc-all: packaging for the all-in-one JDBC artifact
- Minimal supported Java version is 8.
- Follow
docs/ai-review.mdfor compatibility, breaking-change, and review instructions.
Prefer targeted Maven commands over full-repo runs.
- Run module tests:
mvn -pl <module> test - Run a module with dependencies:
mvn -pl <module> -am test - Examples:
mvn -pl client-v2 testmvn -pl jdbc-v2 testmvn -pl clickhouse-data test
Avoid broad dependency, formatting, or unrelated cleanup churn unless required by the task.
- Identify the affected module before editing.
- Read nearby code and follow existing local patterns before introducing new abstractions.
- Prefer focused tests near the affected module over repo-wide runs.
For review requests, follow docs/ai-review.md as the shared review standard across AI agents.
If a module develops its own conventions, add a nested AGENTS.md inside that module.
The nearest AGENTS.md to the edited files should be treated as the most specific guidance.