Есть ли у кого-нибудь опыт работы с JSR 330 против Guice? Из того, что я собираю, Guice не является реализацией JSR 330, но если это что-то вроде Hibernate и JPA, реализация поддерживает множество дополнительных функций, отсутствующих в API. Поскольку я уже использую GWT-Dispatch, Warp-persist guice-serlvet и т. Д., Можно ли что-нибудь получить, перейдя на контейнер EJB, поддерживающий JSR 330?JSR 330 и совместимость с Guice
ответ
Цитируя официальный анонс почты, FYI: JSR-330 support now in Guice SVN:
Я реализовал поддержку JSR-330 к Guice. Этот JSR стандартизирует аннотации, такие как @Inject и интерфейсы провайдера для платформ Java . Он еще не определил, как настроены приложения , поэтому он имеет , не имеющий аналогов для модулей Guice.
Эта новая функция может вызвать боль для пользователей IDE. Так как теперь есть две анкеты @ Intjecti, IntelliJ и т. Д. предложит вам, когда понадобится импорт . Любой из них будет работать, но новые диалоги будут очень раздражающими! Хуже того, две аннотации @Named еще не эквивалентны. Поэтому, если вы применили неправильную аннотацию, вы получите ошибку конфигурации. Я думаю о способах решения этой проблемы.
Эта работа продолжается. Я рекомендую продолжать использовать старые com.google.inject аннотации до пыль поселяется. http://code.google.com/p/google-guice/wiki/JSR330
Это письмо было отправлено 7 сентября 2009 г. Это до вас, чтобы решить, если пыль осела, но я бы подождал немного больше и придерживаться Guice аннотаций в соответствии с рекомендациями.
Guice 2.0 не поддерживает JSR 330, но Guice SVN включает в себя JSR 330-compatible injector.
Это все еще в SVN - есть прогноз, когда произойдет релиз, содержащий это? –
@ Thorbjørn Я не знаю, и я не вижу большого интереса для JSR-330 от Guice (http://markmail.org/thread/pysiphf5t6txuh5p). Меня это ничуть не удивляет: то, что Боб Ли и Роб Джонсон сделали с этой спецификацией, были чистым препятствием (очень близко к саботажу), и я считаю JSR-330 бедной, неудачной политикой. Очень грустный. –
Согласовано. Я надеялся на конвергенцию гуса и шва, чтобы получить ту же независимость, что и для контейнеров сервлетов, но, видимо, этого не произойдет. Сегодня я добавил Weld к нашему основному автономному приложению, а наивная реализация добавила 10 секунд к времени запуска ... Вздох. –