Maven создать проект затмения для пользовательской упаковки - PullRequest
0 голосов
/ 16 марта 2010

для проекта, над которым я работаю, я определил пользовательскую упаковку maven и связанный жизненный цикл (через определение components.xml и определение LifecycleMapping).

Очевидно, что эта упаковка соответствует определенной разработке, для которой в Eclipse был создан плагин. Я хотел бы настроить Eclipse в соответствии с моим содержимым pom.xml.

Я, очевидно, посмотрел на Настраиваемый жизненный цикл сборки , но я более чем смущен предоставленной информацией.

Из того, что я понимаю, я должен определить в своем целевом проекте плагин для сборки, в который я добавлю элементы конфигурации, специфичные для моего проекта. В качестве примера, имея конфигуратор с именем mycompany.mydev.MyEclipseConfigurator, мне нужно написать

  <build>
    <plugins>
      <plugin>
        <groupId>org.maven.ide.eclipse</groupId>
        <artifactId>lifecycle-mapping</artifactId>
        <version>0.9.9-SNAPSHOT</version>
        <configuration>
          <mappingId>customizable</mappingId>
          <configurators>
            <configurator id='mycompany.mydev.MyEclipseConfigurator'/>
          </configurators>
        </configuration>
      </plugin>
    </plugins>
  </build>

Я прав?

Ответы [ 2 ]

1 голос
/ 25 марта 2010

Проблема, с которой я столкнулся в нашей пользовательской упаковке, состоит в том, что Maven не распознал проект как основанный на Java, поэтому плагин Maven Eclipse не генерировал правильные записи в файле .project и не генерировал .classpath.

Первое, что можно исправить, добавив в POM правильные команды и свойства сборки, но это все равно не даст вам .classpath.

Решение состоит в том, чтобы добавить следующий фрагмент к вашему components.xml:

  <component>
        <role>org.apache.maven.artifact.handler.ArtifactHandler
        </role>
        <role-hint>(fill in your own packaging)</role-hint>
        <implementation>
            org.apache.maven.artifact.handler.DefaultArtifactHandler
        </implementation>
        <configuration>
            <type>(fill in your own packaging)</type>
            <extension>(choose war or jar if required)</extension>
            <language>java</language>
            <addedToClasspath>true</addedToClasspath>
        </configuration>
    </component>

С этим дополнением MEP будет обрабатывать ваш проект как обычный проект JAR или WAR и генерировать для него ожидаемую конфигурацию Eclipse.

1 голос
/ 17 марта 2010

На самом деле ранее упомянутая документация относится к устаревшей версии плагина maven eclipse.

В самой последней версии четко указано, как настроить проект eclipse из файла maven pom.xml, указав природу проекта и составителей.

...