Проблема с компиляцией для Maven проекта

У меня есть два проекта Maven - библиотека и небольшая программа. Они находятся в разных папках и используют разные pom.xml, а файлы jar библиотеки включены в небольшую программу pom.xml с использованием следующего плагина:

<groupId>com.googlecode.addjars-maven-plugin</groupId>
<artifactId>addjars-maven-plugin</artifactId>

и абсолютный путь:

<resource><directory>/path/to/jars</directory></resource>

Это сработало правильно, но вдруг с тем же кодом, что и раньше в обоих проектах, небольшая программа больше не компилируется. Библиотека по-прежнему компилируется нормально. (С помощью mvn package -Dmaven.test.skip=true)

Сообщение об ошибке не очень ясно:

[ERROR] error: error while loading <root>, error in opening zip file
[ERROR] error: scala.reflect.internal.MissingRequirementError: object scala.runtime in compiler mirror not found.
[ERROR]     at scala.reflect.internal.MissingRequirementError$.signal(MissingRequirementError.scala:16)
[ERROR]     at scala.reflect.internal.MissingRequirementError$.notFound(MissingRequirementError.scala:17)
...
[ERROR] error: fatal error: object scala.runtime in compiler mirror not found.
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 9.935s
[INFO] Finished at: Fri Nov 15 22:39:11 CET 2013
[INFO] Final Memory: 9M/67M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.scala-tools:maven-scala-plugin:2.15.0:compile (default) on project testprogram: wrap: org.apache.commons.exec.ExecuteException: Process exited with an error: 1(Exit value: 1) -> [Help 1]

Я провел несколько исследований в Google по поводу сообщения об ошибке, и, похоже, это может быть вызвано отсутствием или повреждением файла .jar. Я не вижу связи с этим делом, потому что у меня был один и тот же код и импорт как в рабочем, так и в не рабочем случае.

ОБНОВЛЕНИЕ: добавить больше информации: библиотека использует junixsocket и включает .jar так же, как программа включает библиотеку. Кажется, что проблема появляется только тогда, когда эта часть есть.

Ответ 1

Два ключевых помощника в выяснении того, что делает Maven и почему это делает:

mvn help :ffective-pom - генерирует pom файл со всеми решенными свойствами и всеми описанными задачами, включая стандартные.

mvn -X - отладка при выполнении maven сгенерирует много информации.

Обычно я направляю mvn -X в текстовый файл, а затем отправляюсь на поиски ключевых слов вокруг ошибок. t Я использую эффективный pom, чтобы помочь мне понять, как он получает значения.

Проблемы с путями обычно являются проблемой в такого рода проблемах, если в этом случае не удается найти необходимое.

Ответ 2

Открытие zip файла во время компиляции maven может быть вызвано тем, что pliugin компилятора maven пытается взорвать jar для показа в classpath во время компиляции. Если это так, вы можете проверить, не поврежден ли ваш .m2/репозиторий.

Еще одна проверка, которую вы можете сделать, это прочитать в pom, если есть плагин, который указывает на определенную папку для вашей компиляции, которая предоставляет определенные библиотеки, поэтому восстановление библиотеки в папке должно решить ваши проблемы