Udostępnianie klas src / testowych między modułami w wielo-modułowym projekcie maven
Mam wielo-modułowy projekt Maven. Ze względu na ten przykład rozważ dwa moduły:
data
consumer
Modułconsumer
ma modułdata
jako zależność.
Modułdata
deklaruje kilka podstawowych klas. Istnieją testy podsrc/test
które ich używają. Testy te wymagają stworzenia długiego obiektu, więc mam klasę z pewnymi metodami użytkowymi do tworzenia tych obiektów. Ta klasa narzędziowa (SampleDataHelper
) jest wsrc/test
hierarchia.
Mam też kilka testów wconsumer
moduł, który musi utworzyć niektóre z tych długo zwijanych obiektów. Chcę użyć mojegoSampleDataHelper
klasa (zdefiniowana wdata src/test
) w testach, które znajdują się w moimconsumer src/test
drzewo. Niestety nawetdata
jest zależnościąconsumer
, consumer
nie widzę istniejących klasdata src/test
.
Aby z tym walczyć, myślałem, że mogę stworzyćinne moduł (data-test
) i ruszaj sięSampleDataHelper
do tego podsrc/main
. Wtedy bym zawarłdata-test
jakzakres testowy zależnośćdata
. Niestety, wprowadza to zależność kołową:data
używadata-test
, aledata-test
również wymagadata
.
Jedynym rozwiązaniem, które wymyśliłem, jest umieszczenieSampleDataHelper
poddata src/main
podtest
pakiet i mam nadzieję, że żaden prawdziwy kod aplikacji nigdy go nie wywoła.
Jak mogę udostępniać mojeSampleDataHelper
klasa między modułamibez oddanie gosrc/main
?