Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/nicoloboschi/asap
Maven(d)-based build tool to get modules installed locally as fast as possible.
https://github.com/nicoloboschi/asap
java maven
Last synced: 29 days ago
JSON representation
Maven(d)-based build tool to get modules installed locally as fast as possible.
- Host: GitHub
- URL: https://github.com/nicoloboschi/asap
- Owner: nicoloboschi
- License: mit
- Created: 2022-11-29T09:56:07.000Z (about 2 years ago)
- Default Branch: main
- Last Pushed: 2024-06-06T08:17:37.000Z (8 months ago)
- Last Synced: 2024-12-25T17:24:31.364Z (about 1 month ago)
- Topics: java, maven
- Language: Shell
- Homepage:
- Size: 21.5 KB
- Stars: 3
- Watchers: 3
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# ASAP, speed up local Maven builds 🚀
## Why
When working locally with Maven based applications, you might find yourself in running usual commands such as `mvn clean install -pl -DskipTests`.
Most of the projects have useful-yet-annoying plugins such as checkstyle, spotbugs, javadoc, spotless and son an, that slows down your build - and they are really unecessary while you just want to try your code!`asap` CLI helps you skipping all these plugins without wring 120-character-long command every time in different projects.
It works in 2 ways:
1. Prepend `asap` to `mvn` commands. All the plugins will be skipped automatically.
2. Use `asap` builtin commands to get things compiled fast.## Installation
```
curl -Ls "https://raw.githubusercontent.com/nicoloboschi/asap/main/get-asap.sh" | bash
```## Get started
### Prepending `asap`
```
asap mvn package
```
will be transformed in
```
mvn package -Dcheckstyle.skip ....
```### Using builtin commands
`asap` assumes you are using `mvn` but by default try to use [`mvnd`](https://github.com/apache/maven-mvnd) to increase the build speed.
- `asap mod `: build the module (`install`) with dependant modules (`-am`)
- `asap cmod `: build and clean the module (`install`) with dependant modules (`-am`)
- `asap modonly `: build the module (`install`) without dependant modules
- `asap cmodonly `: build and clean the module (`install`) without dependant modules
- `asap test `: run tests for a module, you can specify a class/method
- `asap dep `: show dependencies of a module. You can append `-Dscope=compile` to remove test dependencies.To build the current directory module, just pass `.` as `module`.
## Reference
This is the complete list of flags and plugins handled by `asap`.
### Flags
- `-nsu`### Plugins
- [maven-checkstyle-plugin](https://maven.apache.org/plugins/maven-checkstyle-plugin/index.html)
- [maven-spotbugs-plugin](https://spotbugs.readthedocs.io/en/stable/maven.html)
- [maven-javadoc-plugin](https://maven.apache.org/plugins/maven-javadoc-plugin/)
- [apache-rat-plugin](https://creadur.apache.org/rat/apache-rat-plugin/)
- [license-maven-plugin](https://www.mojohaus.org/license-maven-plugin/)
- [spotless-maven-plugin](https://github.com/diffplug/spotless/tree/main/plugin-maven)