maven-metadata.xml не обновляется при развертывании на Nexus - PullRequest
10 голосов
/ 02 февраля 2011

я использую Apache Maven 3.0 Nexus Open Source Edition, версия: 1.8.0.1

это часть моего pom.xml

<plugin>
   <artifactId>maven-deploy-plugin</artifactId>
   <version>2.5</version>
</plugin>
<plugin>
   <artifactId>maven-release-plugin</artifactId>
   <version>2.1</version>
</plugin>

<distributionManagement>
   <repository>
   <id>nexus</id>
   <name>nexus</name>
   <url>http://myrepo/nexus/content/repositories/releases</url>
   </repository>
</distributionManagement>

это очень простой проект. когда я

  mvn release:prepare
  mvn release:perform

все работает нормально:

...
[INFO] [INFO] --- maven-deploy-plugin:2.5:deploy (default-deploy) @ simple ---
[INFO] Uploading: http://myrepo/nexus/content/repositories/releases/...pom
[INFO] 4 KB   
[INFO] 5 KB   
[INFO]        
[INFO] Uploaded: http://myrepo/nexus/content/repositories/releases/....pom (5 KB at 1.0 KB/sec)
[INFO] Downloading: http://myrepo/nexus/content/repositories/releases/.../maven-metadata.xml
[INFO] 603 B   
[INFO]         
[INFO] Downloaded: http://myrepo/nexus/content/repositories/releases/.../maven-metadata.xml (603 B at 1.5 KB/sec)
[INFO] Uploading: http://myrepo/nexus/content/repositories/releases/.../maven-metadata.xml
[INFO] 634 B   
[INFO]         
[INFO] Uploaded: http://myrepo/nexus/content/repositories/.../maven-metadata.xml (634 B at 1.6 KB/sec)

Теперь я загружаю http://myrepo/nexus/content/repositories/.../maven-metadata.xml это выглядит так:

<metadata>
<groupId>simple</groupId>
<artifactId>simple</artifactId>
<versioning>
<latest>0.5.8</latest>
<release>0.5.8</release>
<versions>
<version>0.5.9</version>
<version>0.1</version>
<version>0.3</version>
<version>0.4</version>
<version>0.5.1</version>
<version>0.5.2</version>
<version>0.5.3</version>
<version>0.5.4</version>
<version>0.5.5</version>
<version>0.5.6</version>
<version>0.5.7</version>
<version>0.5.8</version>
</versions>
<lastUpdated>20110202190804</lastUpdated>
</versioning>
</metadata>

моя последняя и только что выпущенная версия не помечена как "последняя" и "версия".

Теперь я делаю «Перестроить метаданные» внутри Nexus WebUI. Я загружаю метаданные после этого снова. Теперь это выглядит так

<metadata>
  <groupId>simple</groupId>
  <artifactId>simple</artifactId>
  <versioning>
    <latest>0.5.9</latest>
    <release>0.5.9</release>
    <versions>
      <version>0.1</version>
      <version>0.3</version>
      <version>0.4</version>
      <version>0.5.1</version>
      <version>0.5.2</version>
      <version>0.5.3</version>

      <version>0.5.4</version>
      <version>0.5.5</version>
      <version>0.5.6</version>
      <version>0.5.7</version>
      <version>0.5.8</version>
      <version>0.5.9</version>

    </versions>
    <lastUpdated>20110202191117</lastUpdated>
  </versioning>
</metadata>

Это похоже на ошибку в Nexus или в Maven? У кого-нибудь есть решение для этого?

1 Ответ

6 голосов
/ 04 января 2012

Вы пытались установить updateReleaseInfo в значение true в конфигурации вашего плагина развертывания?

<plugin>
    <artifactId>maven-deploy-plugin</artifactId>
    <version>2.5</version>
    <configuration>
        <updateReleaseInfo>true</updateReleaseInfo>
    </configuration>
</plugin>

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

Из документов Maven :

updateReleaseInfo:
Parameter used to update the metadata to make the artifact as release.

Type: boolean
Required: No
Expression: ${updateReleaseInfo}
Default: false
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...