Проблема дескриптора сайта Maven 3: развертывание артефакта не работает или сайт не работает - PullRequest
7 голосов
/ 13 сентября 2011

Я перешел на maven 3.0.3, но не могу создать сайт maven. Фактически, мой проект использует внешний родительский pom, который не предоставляет дескриптор сайта в качестве артефакта.

1- Есть ли способ создать сайт maven, даже если родитель не предоставляет site.xml? Я не могу заставить это работать. Команда "mvn site" продолжает сбой при попытке загрузить файл site.xml родительского файла со следующей ошибкой (ArtifactResolutionException: Невозможно найти дескриптор сайта ...)

2- Как установить или развернуть файл site.xml в репозитории maven. Я пытаюсь добавить следующий XML в мой родительский pom, но он ничего не устанавливает в моем локальном репозитории с помощью команды mvn install. У меня есть src / site / site.xml в моем проекте, мой проект типа pom Maven-сайт-плагин присоединять-дескриптор присоединять-дескриптор

UPDATE

Нет, это не работает У меня в поме

<url>${site_url_pattern}</url>

<distributionManagement>
<site>
<id>test</id>
<url>file://${baseDir}../maven-site</url>
</site>
</distributionManagement>

В управление плагином ставлю

<plugin>
<!-- Site plugin -->
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-site-plugin</artifactId>
<version>3.0</version>
<configuration>
<chmod>true</chmod>
<inputEncoding>${encoding}</inputEncoding>
<outputEncoding>${encoding}</outputEncoding>
</configuration>
</plugin>

В плагины я положил

<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-site-plugin</artifactId>
<version>3.0</version>
<configuration>
<locales>en</locales>
<reportPlugins>
<!-- Manage site info part creation -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-project-info-reports-plugin
</artifactId>
<version>2.2</version>
<configuration>
<dependencyLocationsEnabled>false</dependencyLocationsEnabled>
<dependencyDetailsEnabled>false</dependencyDetailsEnabled>
<offline>true</offline>
</configuration>
<reports>
<report>cim</report>
<!-- Dependencies report are consuming resources set MAVEN_OPTS=-Xmx1024m if java heap <report>dependencies</report> <report>dependencies-convergence</report> <report>dependencies-management</report> -->
<report>index</report>
<report>issue-tracking</report>
<!-- pb time generation on licence report <report>license</report> -->
<report>mailing-list</report>
<report>plugin-management</report>
<report>project-team</report>
<report>scm</report>
<report>summary</report>
</reports>
</plugin>
</reportPlugins>
</configuration>
<executions>
<execution>
<id>attach-descriptor</id>
<goals>
<goal>attach-descriptor</goal>
</goals>
</execution>
</executions>
</plugin>

У меня есть src / site / site.xml в том же проекте

Когда я делаю mvn site, у меня все еще есть

[ERROR] Failed to execute goal org.apache.maven.plugins:maven-site-plugin:3.0:si
te (default-site) on project ner-delivery: SiteToolException: The site descripto
r cannot be resolved from the repository: ArtifactResolutionException: Unable to
 locate site descriptor: Could not transfer artifact com.sopragroup.evolan:evola
n-framework-superpom:xml:site_en:6.14.2 from/to Artifactory (http://pdtinteg.ptx
.fr.sopra/artifactory/repo): Access denied to: http://pdtinteg.ptx.fr.sopra/arti
factory/repo/com/sopragroup/evolan/evolan-framework-superpom/6.14.2/evolan-frame
work-superpom-6.14.2-site_en.xml
[ERROR] com.sopragroup.evolan:evolan-framework-superpom:xml:6.14.2

Если я вручную добавлю evolan-framework-superpom-6.14.2-site_en.xml в локальное хранилище, это будет работать, но это не реальное решение

1 Ответ

2 голосов
/ 13 сентября 2011
  1. Явно настройте maven-site-plugin 3.0 в вашем pom:

      <pluginManagement>
        <plugin>
               <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-site-plugin</artifactId>
                <version>3.0</version>
                <configuration>
                    <chmod>true</chmod>
                    <inputEncoding>UTF-8</inputEncoding>
                    <outputEncoding>UTF-8</outputEncoding>
                </configuration>
            </plugin>
        </pluginManagement>
    
  2. Добавьте URL и элемент distributionManagement, которые сообщают, где вы планируете его развертывать.

  3. Добавьте файл src / site / site.xml, содержащий все, что вам нужно.

Если у ваших родителей нет ни одного из них, это сработает.

...