
arch-verify
Verify Java architecture rules with ArchUnit. Use when you need to define or validate package or lay
提供方 LLLLimbo|开源
ArchUnit Verification
Workflow
- Identify the architectural rules to enforce (layers, packages, slices, cycles, coding rules).
- Choose the test framework (JUnit 4, JUnit 5, or plain unit tests).
- Add the matching ArchUnit dependency.
- Write ArchUnit rules in test sources and run them in CI.
- Use the Maven plugin when you need cross-repo governance.
Dependencies
JUnit 4
<dependency>
<groupId>com.tngtech.archunit</groupId>
<artifactId>archunit-junit4</artifactId>
<version>1.4.1</version>
<scope>test</scope>
</dependency>
JUnit 5
<dependency>
<groupId>com.tngtech.archunit</groupId>
<artifactId>archunit-junit5</artifactId>
<version>1.4.1</version>
<scope>test</scope>
</dependency>
Other test frameworks
<dependency>
<groupId>com.tngtech.archunit</groupId>
<artifactId>archunit</artifactId>
<version>1.4.1</version>
<scope>test</scope>
</dependency>
On-demand examples
- Run
scripts/fetch-examples.shto clone examples only when needed. - Use
--dest /tmp/archunit-examplesto override the destination. - The default destination
/tmp/archunit-examplesis auto-cleaned when it already exists. - Use
--cleanto overwrite a custom destination. - Use
example-junit4,example-junit5, orexample-plainas the starting point.
Resources
- Use https://github.com/TNG/ArchUnit-Examples.git for runnable examples.
- Read
references/arch-unit-maven-plugin.mdto configure Maven-based governance. - Check https://www.archunit.org/userguide for rule APIs and patterns.
- Check https://github.com/TNG/ArchUnit for source and release notes.