Путь разрешения дочерних модулей в Родительском pom

Я добавляю два modulesв моем parent pom. Я могу разрешить зависимость одного изmodule, Потому что родитель moduleи ребенок moduleнаходятся в одном и том же workspace.
Родитель находится в:
C:/Workspace/Web/ProjectOne/parent. Два дочерних модуля находятся в:
C:/Workspace/Web/ProjectOne/project1
C:/Workspace/Project/Servlet/project2

Ибо project1когда я предоставляю путь ../project1в тоparent pom, buildто успешен. Это связано с тем, что он разделяет то же workspaceсамое с родителем. Однако я не могу решить путь дляproject2, так как он находится в другой папке. Я пытался добавить путь../project2, путь становится чем-то вроде этого: C:/Workspace/Web/ProjectOne/parent/../project2. Я не уверен, почему эти две точки выглядят так. Я думал, что он будет двигаться вверх по каталогу на две папки. Таким образом, buildне удается, так как путь не является правильным.

Я ценю любую помощь. Спасибо.

1 ответ

  1. Чтобы попасть из C:/Workspace/Web/ProjectOne/parentto C:/Workspace/Project/Servlet/project2вам нужно указать этот путь: ../../../Project/Servlet/project2.

    Однако обычно рекомендуется избегать такого разделения проектов. Допустим, вы храните все из Web/ProjectOneодного репозитория SCM и Project/Servletв другом. Как вы версируете / выпускаете их вместе, какой репозиторий вы помечаете? Слишком много сложностей с этим подходом. Вам лучше приблизить их друг к другу. Если вы не можете, вы, вероятно, должны разделить их жизненные циклы сборки и просто использовать один из них в качестве зависимости maven для другого.