Есть отличная удаленная работа для php+codeception+jenkins+allure+docker спецов. 100% remote! Присоединиться к проекту

Как заставить maven читать getResourceAsStream c parent проекта ?


(Taras) #1

Вообшем есть parent проект на maven с pom-кой - framework. У него 2 чайлд модуля с pom-ками: core & tests.
В core - есть метод которий делает вот такое FileReader.class.getResourceAsStream(fileLocation).

Когда я пишу fileLocation - “/data.xml” - и файл лежит в папке src/main/resources либо src/tests/resources то так все работает. Мне нужно что б етот файл лежал в parent проекте например в какой то папку и чтоб resourceAsStream прочитал его от туда и писать тоже нужно б било только в таком формате “/data.xml” (ну либо там папку еще дописать) .

Ну и тоже само если один чайлд модуль хочет залезть в ресоурсес другого чайлд модуля как бить ?

Я нарил resources тег для pom-ки, но не работает так. Может я делаю что то не так.

Как ето сделать сделать средствами maven ?


(Taras) #2

вопрос закрит. Нужно било dependency parent в чайлд передать, так как оно его инстанса не видело и теперь любую папку видет.


(Александр Таранков) #3

Это не проблема мавена, зачем решать её средствами мавена? А проблема в том, что у тебя ресурсы одного проекта лежат в другом.

Сделав такую зависимость ты не сможешь скомпилировать child-проект отдельно от parent-проекта. То есть у тебя появилась новая проблема :smile:


(Taras) #4

да не, ето не ресурси - ето проперти файл просто. Ну у меня модульная архитектура типа…парент и 2 чайлда. В одном кор фреймворка, в другом тести, а все проперти фреймворка в перенте.


(Александр Таранков) #5

Я наверное не правильно понял о какой зависимости речь. Я говорил о зависимости “ребенок-родитель” (тэг <parent> для мультимодульного проекта. Что в данной ситуации это не хорошо на мой взгляд.

Если же ты говоришь о зависимости от артефакта (тэг <dependency>), то всё правильно, должно работать