Обновление файла .settings / org.eclipse.wst.common.component в проекте maven - PullRequest
6 голосов
/ 12 января 2010

Я работаю с проектом maven в eclipse, и у меня возникают проблемы с настройкой развертывания без ручного редактирования XML-файлов.

Когда я собираю проект через maven, я получаю XML-файл org.eclipse.wst.common.component в моей папке .settings. Файл выглядит следующим образом:

<?xml version="1.0" encoding="UTF-8"?>
<project-modules id="moduleCoreId" project-version="1.5.0">
    <wb-module deploy-name="ins-web">           
        <wb-resource deploy-path="/" source-path="/WebContent"/>
        <wb-resource deploy-path="/WEB-INF/classes" source-path="/src/java"/>
        <property name="context-root" value="ins-web"/>
        <property name="java-output-path"/>
    </wb-module>
</project-modules>

Следующая строка вызывает проблему:

<wb-resource deploy-path="/" source-path="/WebContent"/>

Нужно развернуть все, что находится ниже папки WebContent, тогда как на самом деле это следует искать в src / webapp. Поэтому строка должна выглядеть следующим образом:

<wb-resource deploy-path="/" source-path="/src/webapp"/>

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

Ответы [ 3 ]

4 голосов
/ 12 января 2010

Как вы генерируете свои файлы затмения. Используете ли вы m2eclipse Eclipse-плагин или используете maven-eclipse-plugin ? m2eclipse - это плагин для Eclipse, запускаемый внутри Eclipse. maven-eclipse-plugin - это плагин Maven, запускаемый из строки cmd для генерации файлов проекта Eclipse на основе вашего pom.xml.

У меня всегда был больший успех при использовании maven-eclipse-plugin. Авторы m2eclipse не советуют пытаться использовать оба плагина вместе.

Если вы используете плагин maven-eclipse-, вы должны проверить пару вещей.

  1. Используйте последнюю версию maven-eclipse-plugin 2.7.
  2. Убедитесь, что ваш проект представляет собой «военную» упаковку.
  3. Сконфигурируйте также плагин maven-war и установите каталог исходных текстов войны, как вам удобно. Добавьте следующий фрагмент в ваш pom.xml. Вот как maven-eclipse-plugin определяет, где живет ваше веб-приложение.
  <plugin>  
    <artifactId>maven-war-plugin</artifactId>  
    <version>2.1-beta-1</version>  
    <configuration>  
      <warSourceDirectory>src/webapp</warSourceDirectory>  
    </configuration>  
  </plugin>

После внесения этих изменений и повторного запуска mvn eclipse:clean eclipse:eclipse вы должны увидеть ожидаемое значение в файле компонента.

2 голосов
/ 05 января 2011

В конфигурации maven-eclipse-plugin add ...

<additionalConfig>
  <file>
    <name>.settings/org.eclipse.wst.common.component</name>
    <content>
      <![CDATA[Your file content here
      ]]>
    </content>
  </file>
</additionalConfig>
0 голосов
/ 19 июня 2013

Итак, чтобы восстановить файл для JAR (только), в проекте щелкните правой кнопкой мыши> Свойства> Фасеты проекта: - Проверьте опцию Java и выберите версию Java. Он сгенерирует файл org.eclipse.wst.common.project.facet.core в папку .settings - Проверьте служебный модуль. Он сгенерирует файл org.eclipse.wst.common.component в папку .settings - Нажмите кнопку «Применить» и / или кнопку «ОК»

Это только способ создания файла для вашей среды IDE. Насколько мы понимаем, одной из причин, по которой m2e-wtp не генерирует файл правильно, является «плохой» POM. Похоже, что аспекты проекта выводятся из файла pom.xml и их взаимосвязей между другими проектами / модулями (например, зависимости с веб-модулем / типом проекта Java EE).

...