当前位置: 首页 > 知识库问答 >
问题:

Guice@Inject类from jar-没有绑定实现

汪飞捷
2023-03-14

我有一个Maven项目,它使用另一个项目作为jar库。我从jar中获得了@Inject'ed UserService接口,我得到:

com.google.inject.ConfigurationException: Guice配置错误:1)没有绑定UserService的实现。

我曾尝试将UserService接口绑定到具体的类,但后来我得到了注入UserService的类的“没有实现…被绑定”异常。如何解决这个问题?

@Override
protected void configure() {
    Properties configProperties = loadPropertiesFile("device.properties");
    bind(Properties.class).annotatedWith(AppProperties.class).toInstance(configProperties);

    Names.bindProperties(binder(), configProperties);
    Names.bindProperties(binder(), loadProperties("/" + GenericBootstrapConstants.BOOTSTRAP_PROPERTIES_FILE));

    bind(UserService.class).to(UserServiceImpl.class);
}

共有1个答案

卢权
2023-03-14

对于每个注入的服务,我都有bind()和addMapperClasses()。谢谢Jérémie B

 类似资料:
  • 可以自动绑定泛型类吗?考虑一下: 通用接口: 长子类型: 字符串子类型: 自定义模块:公共类CustomModule扩展AbstractModule{ } 主要的 是否可以以某种方式(例如:基抽象类、反射或其他)自动绑定

  • 在Google Guice中:我们可以实现一个带有注释的单例类,它不实现接口,并且尝试使用注释将它注入到任何其他类中吗?此外,我还没有在的扩展类中为该类配置任何绑定。有必要从接口实现类吗?我还想了解绑定的情况,如果我从接口实现单例类,那么它需要绑定,因为可能有多个类实现接口。 但是如果我有一个类没有实现接口,那么是否需要在实现AbstractModule的类中绑定?

  • 这里的新手试图使用虚拟Java Facebook应用程序,该应用程序使用Guice将数据库依赖项注入Facebook工厂,但仍然出现Guice错误,告诉我: ###com没有实现。实例存储Db用@com注释。实例存储注释。在定位com时绑定了SystemDb()。实例存储Db用@com注释。实例存储注释。com上参数0的SystemDb()。实例脸谱网。客户例外情况。com上的FacebookEx

  • 我正在开发一个基于JAX-RS的Java应用程序,使用Google Guice进行依赖注入。我的代码中有以下接口: 在上面的接口中,Lock是一个定义如下的接口: 锁接口由以下类实现: LockProvider接口由以下类实现: 除了LockProvider之外,我不希望应用程序中的类知道底层锁项,这就是为什么我没有在lock接口中包含getUnderlyingLockItem。 现在,当我尝试将

  • 我是一个尝试使用Guice的人(这里是新手!!)我的一个项目。 所以我有一个 我的实现是 我还将DataQueue接口定义为 DataQueue的实现如下 在我的AppModule.Configure方法中,我有以下代码 我的ConsumerFactory是一个带有create()方法的接口,该方法返回一个使用者 我的DataQueueFactory是一个带有create()方法的接口,该方法返回

  • 由于绑定是在绑定模块中定义的,Google Guice 会在需要注入依赖项时使用它们。如果不存在绑定,它可以尝试创建即时绑定。绑定模块中存在的绑定称为显式绑定并且具有更高的优先级,而即时绑定称为隐式绑定。如果两种类型的绑定都存在,则考虑使用显式绑定进行映射。 以下是三种类型的即时绑定的示例。 绑定类型 描述 可注入的构造函数 非私有、无参数构造函数有资格进行即时绑定。另一种方法是使用@Inject