Сбой компиляции плагина scala maven с "версией не может быть пустой" для случайной зависимости
Долгое время слушатель впервые звонил.:-)
Я пытаюсь медленно переместить наше Java-приложение на работе в Scala, и первым маленьким шагом является получение кода Scala для компиляции в нашем проекте. Я добавил плагин scala-maven в наш специальный веб-приложение:
...
<dependency>
<groupId>org.scala-lang</groupId>
<artifactId>scala-library</artifactId>
<!--version>2.10.3</version-->
<version>2.7.2</version>
</dependency>
....
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>build-helper-maven-plugin</artifactId>
<executions>
<execution>
<id>add-source</id>
<phase>generate-sources</phase>
<goals>
<goal>add-source</goal>
</goals>
<configuration>
<sources>
<source>src/main/scala</source>
</sources>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>net.alchim31.maven</groupId>
<artifactId>scala-maven-plugin</artifactId>
<executions>
<execution>
<id>scala-compile-first</id>
<phase>process-resources</phase>
<goals>
<goal>add-source</goal>
<goal>compile</goal>
</goals>
</execution>
<execution>
<id>scala-test-compile</id>
<phase>process-test-resources</phase>
<goals>
<goal>testCompile</goal>
</goals>
</execution>
</executions>
</plugin>
и другие варианты но это мой последний.
Теперь это pom для веб-приложения, у нас есть еще один pom для фляги, которая содержит некоторый общий код, который мы разделяем с другими приложениями. И оба проекта имеют зависимости от других внутренних банок.
Мой класс scala - маленький крошечный контроллер, расположенный в src / main / scala.
Ошибка, которую я получаю, когда запускаю пакет maven или любую другую команду maven:
[INFO] --- scala-maven-plugin:3.1.6:compile (scala-compile-first) @ producttool-webapp ---
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 4.663s
[INFO] Finished at: Thu Jan 16 15:34:09 PST 2014
[INFO] Final Memory: 16M/213M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal net.alchim31.maven:scala-maven-plugin:3.1.6:compile (scala-compile-fi
rst) on project producttool-webapp: Execution scala-compile-first of goal net.alchim31.maven:scala-m
aven-plugin:3.1.6:compile failed: For artifact {company.com:vine-xml:null:jar}: The version cannot be em
pty. -> [Help 1]
Я вижу предупреждение / ошибку при отладке этой сборки, но это не имеет смысла для меня:
[WARNING] The POM for company.com:vine-xml:jar:1.11.1 is invalid, transitive dependencies (if any) will
not be available: 2 problems were encountered while building the effective model for company.com:vine-xm
l:
[ERROR] 'modelVersion' is missing. @ company.com:vine-xml:[unknown-version]
[ERROR] 'version' is missing. @ company.com:vine-xml:[unknown-version]
Дочерний проект jar, от которого мы зависим, зависит от этого jar, он указан в их файле pom.xml и проходит отладку так:
[DEBUG] company.com:vine-xml:jar:1.12.2:compile
...
[DEBUG] testArtifact: artifact=company.com:vine-xml:jar:1.12.2:compile
[DEBUG] includeArtifact: artifact=company.com:vine-xml:jar:1.12.2:compile
[DEBUG] startProcessChildren: artifact=company.com:vine-xml:jar:1.12.2:compile
[DEBUG] testArtifact: artifact=javax.xml.bind:jaxb-api:jar:2.1:compile
[DEBUG] omitForNearer: omitted=javax.xml.bind:jaxb-api:jar:2.1:compile kept=javax.xml.bind:jax
Мне интересно, может быть, мой плагин scala-maven не видит никаких зависимостей и спрашивает, как бы я это исправить. Или есть способ игнорировать подобные ошибки, которые я могу включить в scala-maven-plugin.
Спасибо за вашу помощь.
1 ответ
Ну, я не уверен, есть ли другое исправление, но исключение оскорбительного фляги из совершенно другого подпроекта, как показано ниже, сработало для меня.
<exclusion>
<artifactId>vine-xml</artifactId>
<groupId>company.com</groupId>
</exclusion>