Earlier Versions
Name | Size | Uploaded | Game Version | Downloads | |
Annotated-DI-2.0.4+1.18 release | 778.36 KB | Nov 30, 2021 | 1.18.1 | 55 | Download |
Annotated-DI-2.0.4+1.17.1 release | 779.03 KB | Oct 13, 2021 | 1.17.1 | 151 | Download |
Annotated-DI-2.0.4+1.16.5 release | 779.55 KB | Oct 13, 2021 | 1.16.5 | 40 | Download |
Annotated-DI-2.0.3+1.17.1 release | 777.69 KB | Jul 25, 2021 | 1.17.1 | 403 | Download |
Annotated-DI-2.0.3+1.16.5 release | 778.28 KB | Jul 25, 2021 | 1.16.5 | 71 | Download |
Annotated-DI-2.0.2+1.17.1 release | 777.69 KB | Jul 15, 2021 | 1.17.1 | 32 | Download |
Annotated-DI-2.0.2+1.16.5 release | 778.28 KB | Jul 15, 2021 | 1.16.5 | 17 | Download |
Annotated-DI-2.0.1+1.17.1 release | 777.54 KB | Jul 11, 2021 | 1.17.1 | 29 | Download |
Annotated-DI-2.0.1+1.16.5 release | 778.13 KB | Jul 11, 2021 | 1.16.5 | 13 | Download |
Annotated-DI-2.0.0+1.17.1 release | 777.32 KB | Jul 11, 2021 | 1.17.1 | 23 | Download |
Annotated-DI-2.0.0+1.16.5 release | 777.90 KB | Jul 11, 2021 | 1.16.5 | 14 | Download |
Annotated-DI-1.0.4+1.17.1 release | 1.55 MB | Jul 9, 2021 | 1.17.1 | 34 | Download |
Annotated-DI-1.0.4+1.16.5 release | 1.55 MB | Jul 9, 2021 | 1.16.5 | 19 | Download |
Annotated-DI-1.0.3+1.16.5 release | 1.54 MB | Jul 7, 2021 | 1.16.5 | 17 | Download |
Annotated-DI-1.0.3+1.17.1 release | 1.54 MB | Jul 7, 2021 | 1.17.1 | 27 | Download |
Description
Annotated DI is a wrapper around Guice with a few extra utilities added for more convenient use with Minecraft mods. This allows the Dependency Injection design pattern to be used when making mods and APIs for them.
Extra utilities for modders:
- The @Implementation annotation, which can be used to wire up all the dependencies conveniently without needing to make a separate file to configure all the bindings, and without forcing the API to have a compile time dependency on the implementation.
- A central Injector, which allows mods to inject classes/interfaces from other mods.
- Entrypoints that allow initializing the mod with the Injector passed in as a parameter.
- An entrypoint that provides a way for modders to add a custom Module to the Injector when it's created – most mods won't need this unless they're doing some advanced bindings of some kind.
Documentation for developers can be found on the GitHub.
Q&A
How does this help users?
Mods that are designed to use this can be easier to maintain than mods that don't use it, which can result in faster updates. It's not the right solution for every mod, but it can be useful for some, especially when making an API that other mods can use.
Does this do anything on its own?
It shows up in the mod list, but that's about it.
Does this download mod dependencies for you?
No
Add a comment