Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/austinv11/servicer
A simple annotation processor for wiring Java services
https://github.com/austinv11/servicer
autoservice java service serviceloader
Last synced: 2 days ago
JSON representation
A simple annotation processor for wiring Java services
- Host: GitHub
- URL: https://github.com/austinv11/servicer
- Owner: austinv11
- License: apache-2.0
- Created: 2018-10-06T01:57:21.000Z (about 6 years ago)
- Default Branch: master
- Last Pushed: 2020-06-01T23:33:32.000Z (over 4 years ago)
- Last Synced: 2023-08-13T09:07:31.397Z (over 1 year ago)
- Topics: autoservice, java, service, serviceloader
- Language: Java
- Homepage:
- Size: 66.4 KB
- Stars: 0
- Watchers: 2
- Forks: 3
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Servicer
A simple annotation processor for wiring Java services. Simply enable annotation processing
(processing is done via the `com.austinv11.servicer.ServicerProcessor` class) and annotate all your service implementations with the
`@WireService` annotation. Now, on compilation, your services will have their associated metadata generated so you can use Java's
`ServiceLoader` without needing to mess with messy resource files.This project has the same goal as [Google's AutoService](https://github.com/google/auto/tree/master/service) but this is much more
lightweight (only includes 3 classes and has no external dependencies).It also supports gradle's incremental compilation feature.
## Usage
Add this project to your pom.xml as so:
```xmlcom.austinv11.servicer
Servicer
1.0.3
true```
Or if you use gradle, add this project to your build.gradle as so:
```groovy
dependencies {
compileOnly 'com.austinv11.servicer:Servicer:1.0.3'
annotationProcessor 'com.austinv11.servicer:Servicer:1.0.3'
}
```Then simply annotate service implementations with the `@WireService` annotation!