У меня есть вложенный проект maven. Когда я изначально импортирую, все работает отлично. Если я посмотрю на содержимое файла * .iml, он содержит:
<content url="file://$MODULE_DIR$">
<sourceFolder url="file://$MODULE_DIR$/src/main/java" isTestSource="false" />
<sourceFolder url="file://$MODULE_DIR$/src/main/resources" type="java-resource" />
<sourceFolder url="file://$MODULE_DIR$/src/test/java" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/src/test/resources" type="java-test-resource" />
<sourceFolder url="file://$MODULE_DIR$/target/generated-sources/xjc" isTestSource="false" generated="true" />
<excludeFolder url="file://$MODULE_DIR$/target" />
</content>
Некоторое время спустя, особенно после того, как я изменил файл pom. xml, я go для запуска некоторых тестов , но они не работают, поскольку IntelliJ не может найти мой исходный код. Вернувшись к файлу iml, я вижу, что все изменилось:
<content url="file://$MODULE_DIR$/../../../../myProject/featureA/core">
<sourceFolder url="file://$MODULE_DIR$/../../../../myProject/featureA/core/src/main/java" isTestSource="false" />
<sourceFolder url="file://$MODULE_DIR$/../../../../myProject/featureA/src/main/resources" type="java-resource" />
<sourceFolder url="file://$MODULE_DIR$/../../../../myProject/featureA/core/src/test/java" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/../../../../myProject/featureA/core/src/test/resources" type="java-test-resource" />
<sourceFolder url="file://$MODULE_DIR$/../../../../myProject/featureA/core/target/generated-sources/xjc" isTestSource="false" generated="true" />
<excludeFolder url="file://$MODULE_DIR$/../../../../myProject/featureA/core/target" />
</content>
Это пример одного из вложенных проектов, но он верен на всех уровнях, включая верхний уровень. Это странно, и это неправильный путь (на самом деле это был бы правильный путь, если бы я выбрал один из ../
)
Аналогично, в моем root -уровне .idea \ modules . xml файл, все пути содержат лишние ../
.
Пока что единственным обходным путем является исправление всех путей в модулях. xml, удаление всех файлов * .iml и реимпорт, но это боль. Есть идеи, как я могу это предотвратить?