maven-antrun-plugin возвращает плагин не найден
Я следовал за пост- установочным jar, собранным из муравейной задачи в локальный репозиторий maven
Я не могу понять, в чем проблема, но это просто не работает. Я не знаю, почему они использовали <arg value="mvn.bat"/>
вместо <arg value="mvn "/>
В любом случае у меня есть следующий XML-файл:
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-antrun-plugin</artifactId>
<version>1.8</version>
<executions>
<execution>
<phase>generate-sources</phase>
<configuration>
<target name="mvn">
<property environment="env" />
<property name="appname" value="hellojavaworld" />
<exec dir="." executable="cmd">
<arg value="/c"/>
<arg value="mvn "/>
<arg value="install:install-file"/>
<arg value="-Dfile=c:\Documents and Settings\bbb\workspace\HelloServlet\hellojavaworld\src\main\java\hellojavaworld.bin\hellojavaworld.jar"/>
<arg value ="-DgroupId=${appname}"/>
<arg value="-DartifactId=${appname}"/>
<arg value="-Dversion=1.0"/>
<arg value="-Dpackaging=jar"/>
<arg value="-DgeneratePOM=true"/>
</exec>
</target>
</configuration>
<goals>
<goal>run</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>2.5.1</version>
<configuration>
<source>1.5</source>
<target>1.5</target>
</configuration>
</plugin>
</plugins>
</build>
Возвращает ошибки:
Ошибка разрешения версии для плагина ' install:install-file -D file=c' из репозиториев [локальный (C:\Documents and Settings\bbb.m2\repository), центральный ( https://repo.maven.apache.org/maven2)]: плагин не найден ни в одном хранилище плагинов
1 ответ
Ваша проблема очень тонкая, и сообщение об ошибке не помогает в этом случае.
Проблема заключается в следующей конфигурации maven-antrun-plugin
:
<arg value="mvn "/>
Так должно быть
<arg value="mvn"/>
Пространство в конце кодируется в %20
и это все портит. Я заметил это, потому что при запуске вашей конфигурации я увидел следующий журнал:
[exec] Downloading: https://repo.maven.apache.org/maven2/%20install/install-file%20-Dfile=c/maven-metadata.xml
Обратите внимание, что в этом журнале Maven пытается найти install-file%20
плагин, который, очевидно, не работает.