org.codehaus.enunciate последняя версия

#maven #plugins #enunciate

#maven #Плагины #enunciate

Вопрос:

я полностью потерялся после 2 часов попыток найти решение.

Для моего проекта мне нужно enunciate (http://enunciate.codehaus.org /) для создания документации для RESTful api приложения. Использование версии 1.28 maven-enunciate-plugin ранее работало довольно хорошо, но внезапно я столкнулся с NullPointerException в плагине при выполнении цели maven для enunciate (но это исключение — другая история, с которой нужно разобраться ..)

В любом случае, я увидел, что было обновление до 1.29, поэтому я подумал, что попробую.

Обычная конфигурация для использования enunciate в вашем процессе сборки maven в основном такова:

          <plugin>
            <groupId>org.codehaus.enunciate</groupId>
            <artifactId>maven-enunciate-plugin</artifactId>
            <version>1.29</version>
            <executions>
                <execution>
                    <goals>
                        <goal>docs</goal>
                    </goals>
                    <configuration>                            
                        <docsDir>${project.build.directory}/docs</docsDir>
                        <configFile>enunciate.xml</configFile>
                    </configuration>
                </execution>
            </executions>
        </plugin>
  

К сожалению, 1.29, похоже, пока не находится в центральном репозитории maven, но добавляет ручную зависимость и репозиторий, подобный этому:

 <repositories>
    <repository>
        <id>opencast-public</id>
        <url>http://repository.opencastproject.org/nexus/content/repositories/public/</url>
    </repository>
</repositories>

<dependencies>
    <dependency>
        <groupId>org.codehaus.enunciate</groupId>
        <artifactId>maven-enunciate-plugin</artifactId>
        <version>1.29</version>
        <scope>compile</scope>
    </dependency>
</dependencies>
  

на самом деле выдает загрузку 1.29 в мой локальный m2-репозиторий (я вижу все файлы …).
В любом случае, как только я попытаюсь использовать плагин, как указано выше, maven не будет выполняться должным образом, а завершится с:

Не удалось разрешить плагин org.codehaus.enunciate:maven-enunciate-plugin:1.29 или одну из его зависимостей: не удалось прочитать дескриптор артефакта для org.codehaus.enunciate:maven-enunciate-plugin:jar: 1.29: Не удалось найти org.codehaus.enunciate:maven-enunciate-plugin:pom: 1.29 дюйма http://repo.maven.apache.org/maven2 был кэширован в локальном репозитории, разрешение не будет повторно предпринято до тех пор, пока не истечет интервал обновления центра или не будут выполнены принудительные обновления -> [Справка 1]

Почему maven не использует правильно загруженную зависимость??

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

Комментарии:

1. Их список рассылки довольно активен. Возможно, вы захотите отправить им электронное письмо.

2. Что происходит, когда вы запускаете maven с -U опцией?

3. Ничего особенного. Независимо от того, определяю ли я зависимость и репозиторий вручную или нет, плагин всегда будет пытаться загрузить версию из maven central, где она недоступна.

Ответ №1:

Просто столкнулся с этим сам. Вам нужно убедиться, что вы добавили репозиторий в блок pluginRepositories вместо блока репозиториев.

 <pluginRepositories>
    <pluginRepository>
        <id>opencast-public</id>
        <url>http://repository.opencastproject.org/nexus/content/repositories/public/</url>
    </pluginRepository>
</pluginRepositories>
  

Комментарии:

1. Не работает. Он по-прежнему жалуется на: [ПРЕДУПРЕЖДЕНИЕ] Отсутствует POM для org.codehaus.enunciate:enunciate-rt: jar:1.29, информация о зависимостях недоступна