Почему IntelliJ Idea не находит зависимости Maven от другого модуля Kotlin?

Представьте, что у меня есть два проекта на основе Maven с кодом Kotlin, prjA и prjB .

Тестовый класс SomeTest в prjA ссылается на класс и функцию, определенные в prjB :

 class SomeTest { @Test fun prjACanReferencePrjBStuff() { val valRes = ValidationResult() val correctValRes = createCorrectValidationResult() } } 

Когда я

  1. запустить mvn clean install в prjB ,
  2. обновить зависимости prjA в IntelliJ Idea и
  3. запустить mvn clean install в prjA ,

Я получаю ошибки – Maven не может найти классы, определенные в prjB :

Ошибка в IntelliJ Idea

Зачем? Как я могу это исправить?

Заметки:

  1. По умолчанию классы Kotlin общедоступны . У меня нет ошибок при mvn install prjB .
  2. Репозиторий Maven содержит артефакты prjB а IntelliJ Idea ссылается на правильный репозиторий Maven.
  3. Когда я пытаюсь построить prjA из командной строки, сборка завершается успешно.
  4. Недействительность кэша IntelliJ Idea и перестройка проекта не помогают.

Обновление 1: Мне нужно решение, которое позволяет мне использовать prjB не только в тестах.

Обновление 2: все работает отлично, если я переписываю классы Котлина в prjB в Java.

Если вам нужны обычные классы из prjB, добавьте основную зависимость к prjA. Если вам нужны тестовые классы из prjB, добавьте тестовую зависимость к prjA.

Чтобы добавить основную зависимость к другому модулю:

 <project> ... <dependencies> <dependency> <groupId>com.your.group</groupId> <artifactId>prjB</artifactId> <version>1.0-SNAPSHOT</version> </dependency> </dependencies> ... </project> 

Чтобы добавить тестовую зависимость к другому модулю:

 <project> ... <dependencies> <dependency> <groupId>com.your.group</groupId> <artifactId>prjB</artifactId> <version>1.0-SNAPSHOT</version> <type>test-jar</type> <scope>test</scope> </dependency> </dependencies> ... </project> 

Вот пример тестовой зависимости.