mirror of
https://github.com/apache/struts.git
synced 2026-08-05 14:47:09 +00:00
1.2 KiB
1.2 KiB
CLAUDE.md
Build Commands
# Build without tests (fastest)
./mvnw clean install -DskipTests -DskipAssembly
# Test a single module
./mvnw -pl core clean test
./mvnw -pl plugins/spring clean test
# Full build with tests
./mvnw clean install
# Integration tests
./mvnw clean verify -DskipAssembly
# Coverage report
./mvnw clean verify -Pcoverage -DskipAssembly
Project-Specific Rules
- This is the 6.x.x branch (
release/struts-6-8-x). - Uses javax.servlet (Java EE), not Jakarta EE. Verify imports use
javax.servletnamespace. - Test pattern:
**/*Test.java. Test classes use JUnit 4 with@Testannotations. - OGNL expressions have strict security via
SecurityMemberAccess— test any new OGNL usage against the security sandbox. - Each plugin has its own
struts-plugin.xmldescriptor — register new beans there, not in core config. - Run
./mvnw clean prepare-packagebefore committing to verify Apache RAT license headers pass.
Module Layout
core/— framework coreplugins/— 20+ plugin modules (spring, json, tiles, velocity, etc.)apps/showcase/— feature demo appapps/rest-showcase/— REST examples