2013-06-19 3 views
1

Я пытаюсь написать свой собственный плагин maven. Когда я вручную устанавливаю проект плагина, я могу использовать его без проблем, но у меня возникла проблема с его извлечением из нашего удаленного репозитория maven. Эта ошибка возникает, если я удаляю com/company/my-plugin из каталога .m2/repository, а затем пытаюсь выполнить установку mvn.Maven плагин не смог найти артефакт при использовании удаленного сервера

[WARNING] The POM for com.company:my-plugin:jar:0.0.1-SNAPSHOT is missing, no dependency information available 
[INFO] ------------------------------------------------------------------------ 
[INFO] BUILD FAILURE 
[INFO] ------------------------------------------------------------------------ 
[INFO] Total time: 0.472s 
[INFO] Finished at: Wed Jun 19 16:15:29 EDT 2013 
[INFO] Final Memory: 4M/122M 
[INFO] ------------------------------------------------------------------------ 
[ERROR] Plugin com.company:my-plugin:0.0.1-SNAPSHOT or one of its dependencies could not be resolved: Failed to read artifact descriptor for com.company:my-plugin:jar:0.0.1-SNAPSHOT: Could not find artifact com.company:my-plugin:pom:0.0.1-SNAPSHOT -> [Help 1] 

Единственная ссылка на плагин в П в разделе сборки/плагин:

<plugin> 
    <groupId>com.company</groupId> 
    <artifactId>my-plugin</artifactId> 
    <version>0.0.1-SNAPSHOT</version> 
    <configuration> 
     <sourceFiles> 
      <sourceFile>infile.foo</sourceFile> 
     </sourceFiles> 
     <outputFile>outpath/myfile.foo</outputFile> 
    </configuration> 
    <executions> 
     <execution> 
      <phase>process-resources</phase> 
      <goals> 
       <goal>my-goal</goal> 
      </goals> 
     </execution> 
    </executions> 
</plugin> 

Я подтвердил, что проект существует в нашем удаленном хранилище, и что другая зависимость в этом хранилище разрешаются. Однако другие зависимости не являются плагинами.

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

ответ

4

Оказывается, мне нужно отдельно указать расположение репозиториев плагинов в pom (в дополнение к обычному заданию удаленного хранилища). Я отсутствовал в следующем блоке:

<pluginRepositories> 
    <pluginRepository> 
    <id>my-plugin-repo</id> 
    <url>https://nexus.company.com:8443/path/to/repository/</url> 
    </pluginRepository> 
</pluginRepositories> 
0

«[ПРЕДУПРЕЖДЕНИЕ] П для com.company:my-plugin:jar:0.0.1-SNAPSHOT не хватает, информации нет зависимостей доступной»

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

+0

Это определенно СМОТРЕТЬ, чтобы быть там. Мы используем сервер nexus, и я могу видеть pom и весь обычный контент, который я ожидал бы для обычного развертывания maven. –

Смежные вопросы