我有一个多模块Maven项目。 对于这个例子的目的,考虑两个模块:
-
data
-
consumer
模块consumer
具有模块data
作为一个依赖。
模块data
声明一堆核心类。 目前正在测试src/test
使用它们。 这些测试需要一些啰嗦创建对象,所以我有一些实用方法,它创建这些对象的类。 这个工具类( SampleDataHelper
)处于所述src/test
层次。
我也有在一些测试中consumer
模块,需要创建一些这些冗长的对象。 我想用我的SampleDataHelper
类(在定义data src/test
)在驻留在我的测试中consumer src/test
树。 不幸的是,即使data
是依赖consumer
, consumer
无法看到下存在的类data src/test
。
为了解决这个问题,我想我可能会创建另一个模块( data-test
),并移动SampleDataHelper
下它src/main
。 然后,我将包括data-test
为测试范围依赖data
。 不幸的是,这引入的循环依赖关系: data
使用data-test
,但data-test
也需要data
。
我想出了唯一的解决办法是把SampleDataHelper
下data src/main
一个下test
包,并希望没有真正的应用程序代码以往任何时候都调用它。
我如何能分享我的SampleDataHelper
模块之间的类没有把它下src/main
?