Basic gradle template with subprojects, deployable to Heroku as separate dyno processes.
- Gradle Plugins
- application plugin
- shadowjar plugin
- Code Style
- checkstyle
- findbugs
- pmd
- General Libraries
- guava
- junit
- mockito
- log4j2 via slf4j
- Multi-Project Gradle Setup
- see: settings.gradle
- Heroku Deployment
- see: Procfile, stage.gradle
$ ./gradlew clean build
$ ./gradlew clean test
$ ./gradlew clean stage
Use the Gradle application plugin.
However, ./gradlew run
will run applications in lexicographical order.
Instead, explicitly specify which subproject to run:
$ ./gradlew app-crawler:run
$ ./gradlew app-indexer:run
$ ./gradlew app-searcher:run
- Consul: http://localhost:8500
- RabbitMQ: http://localhost:15672/#/