【问题标题】:Exclude class from a dependency从依赖项中排除类
【发布时间】:2014-11-21 20:01:02
【问题描述】:

我想在运行时的依赖项之间切换。

伪代码:

//use com.realdependency.ConnectionFactoryImpl; 
    Class A {
           // intergration test  
       void testWithLiveDomain() {
          Connection connection = ConnectionFactory.getInstance().getConnection(domain);
       }

    }

// use com.mymockeddependency.ConnectionFactoryImpl; 
class B  {
   // unit test
   void testWithMockDomain() {
      Connection connection = ConnectionFactory.getInstance().getConnection(domain);
   }
}

如果我的 POM.xml 中有两个依赖项,那么我的 B 类将使用真正的依赖项而不是模拟的依赖项。如何限制 B 类使用模拟依赖项

【问题讨论】:

    标签: java maven-2 maven-3 dependency-management


    【解决方案1】:

    这是依赖注入的完美候选。 如果这是 Web 应用程序,或者您可以添加额外的库,例如 Spring 或任何类型的 DI 容器(PicoContainer?),您可以利用它们在运行时选择依赖项。

    尝试谷歌搜索“java @Alternative annotation”。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-02-12
      • 2015-09-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多