Cadre d’injection de dépendances très petit, limité à javax.inject pour Java
Olivier Grégoire
Cadre d’injection de dépendances très petit, limité à javax.inject pour Java
Existe-t-il un petit framework DI qui implémente le package javax.inject
( @Scope
annotation @Singleton
: @Singleton
suffit) et ne fournit qu’un conteneur autour @Singleton
obtenir des instances? Ce cadre sera intégré à mon cadre dans d’autres petites applications, donc je ne peux pas me permettre d’avoir beaucoup de fonctionnalités ou de taille. Plus de fonctionnalités signifie plus de soutien de ma part, ce que je ne veux pas non plus. Même un « allez voir le documentation « est trop de support pour ce projet.
Caractéristiques requises:
- implémente
javax.inject
- injection constructeur
Caractéristiques optionnelles:
- moins de réflexion que possible, y compris le proxy
Qu’est-ce que j’ai déjà fait?
Je connais les suivants, mais la plupart fournissent beaucoup trop de choses avec eux et donc un encombrement d’API dont je ne veux / n’ai pas besoin.
- Dague: premier choix actuel pour ce projet. Retirez les modules et c’est ce que je recherche (oui, cela signifie pas d’interface). Une taille de 58 Ko est excellente par rapport aux autres frameworks. L’injection au moment de la compilation est la cerise sur le gâteau.
- Guice: toujours mon premier choix en matière de DI, mais c’est trop gros pour ce projet, surtout en termes d’API.
- Printemps: j’ai dit petit …
- HK2: ne sais pas assez pour juger correctement, mais il semble qu’il possède la plupart des fonctionnalités de Guice.
- Pico-container: n’est plus vraiment « pico », du moins en termes d’API.
Basil Bourque
Qu’en est-il de l’implémentation de référence CDI, Weld ?
Olivier Grégoire
Je ne l’ai jamais utilisé en dehors d’un serveur d’applications, mais le fait qu’il ait autant d’options montre clairement que ce n’est pas un vrai concurrent dans ma recherche. Cela peut être vu ici: docs.jboss.org/cdi/api/1.2
jwells131313
Essayez hk2 ( hk2.java.net ). Il n’est plus aussi petit qu’avant, mais il est encore relativement petit par rapport à beaucoup d’autres
Réponses
#à, #de, #pour, cadre,, d’injection, dépendances, Java, javax.inject, limite, petit, très