У меня была похожая проблема, когда я хотел, чтобы у дочерних POM был тот же файл свойств, что и у родительского, но я не мог заставить работать переменную $ {project.parent.basedir}.
Однако я создал переменную в родительском элементе и переписал одну и ту же переменную в каждом из дочерних пом (это должно работать и для бабушек ... хотя у меня их не было).
Например:
Parent POM:
<properties>
<my_basedir>${basedir}</my_basedir>
</properties>
Child POMs:
<properties>
<my_basedir>${basedir}/../</my_basedir>
</properties>
Теперь я просто перечисляю фильтр один раз в родительском, и все остальные получают его. Если вы перемещаете ребенка, вы просто меняете относительный путь.
<filters>
<filter>${my_basedir}/myfile.properties</filter>
</filters>