Циклические зависимости от многомодульного проекта maven - PullRequest
0 голосов
/ 03 июня 2019

За последние несколько недель я писал очень простой блокчейн в Java как проект maven с Intellij. Когда я начал этот проект, я был в порядке со всем, что находится в одном модуле, хотя технически существует два артефакта, которые необходимо создать для работы проекта (исполняемый файл .jar для логики приложения / управления и файл .war для все содержимое p2p, развернутое через контейнер Tomcat). Я использовал отдельные профили для сборки .jar и .war и выполнил / развернул их вручную.

Я, однако, устал от этого и считаю, что разделение этого на многомодульный проект (.war, .jar и .ear? Возможно ...) - единственный способ достичь моей цели - создать и выполнить / развернуть все сразу с помощью одной команды. Я начал это делать, но меня запутали циклические зависимости между двумя дочерними модулями. У меня есть код на стороне приложения, который зависит от стороны сети, и код на стороне сети, который зависит от стороны приложения. Как я могу решить эту проблему, создав другой модуль и, таким образом, еще один pom.xml? Любые предложения будут ценны! Пожалуйста, потерпите меня, так как я все еще новичок в Java / Maven, это мой первый настоящий треск в приложении любой степени сложности.

1 Ответ

1 голос
/ 03 июня 2019

когда ваши дочерние модули c1 и c2 зависят друг от друга, то есть от класса или пакетов, тогда общий пакет должен находиться в отдельном модуле c3.Добавьте c3 как зависимость как в c1, так и в c2 проекте.

вы не можете добавить c1 как зависимость в c2 и c2 как зависимость в c1.Потому что, когда maven пытается проанализировать ваш код, он не может найти какой модуль построить первым из-за этой циклической зависимости.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...