java - 为什么多个实现不允许在 module-info.java 中声明为模块服务?

标签 java service dependency-injection module

我有一个模块提供接口(interface)的两种实现。我收到编译错误“重复的服务条目:org.util.hsm.api.HSMService”。两个实现都属于同一个模块。

模块信息.java

module org.util.thales.hsm {
    uses org.util.hsm.api.HSMService;
    provides org.util.hsm.api.HSMService with org.util.hsm.thales.ThalesHSMService;
    provides org.util.hsm.api.HSMService with org.util.hsm.safenet.SafeNetHSMService;
}

最佳答案

经过多次尝试和错误,我找到了解决方案。

module org.util.thales.hsm {
    uses org.util.hsm.api.HSMService;
    provides org.util.hsm.api.HSMService with org.util.hsm.thales.ThalesHSMService, org.util.hsm.safenet.SafeNetHSMService;
}

关于java - 为什么多个实现不允许在 module-info.java 中声明为模块服务?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57374172/

相关文章:

c# - 如何配置 Unity-Container 以通过为该类提供字符串值来注册该类?

java - CrudRepository 是怎么知道去哪张表取数据的呢?

c# - 在 http//上没有监听端点可以接受 WCF 中的消息

c# - 重载和依赖注入(inject)有什么区别?

Angular 2依赖注入(inject)从构造函数外部进行实例化

java - Android 服务不更新位置

java - Java程序,用于测试Internet连接

java - 从嵌入式 Tomcat/Jetty jsf-bean 调用应用程序方法

java - 将视口(viewport)宽度设置为滚动 Pane 宽度

java - 使 Java 自定义控件可在 Eclipse WindowBuilder 中访问?