Maven 2 Weblogic.xml замена - PullRequest
       38

Maven 2 Weblogic.xml замена

1 голос
/ 05 декабря 2011

У меня проблема с размещением файла weblogic.xml в папке WEB-INF после установки mvn. Мой файл weblogic.xml находится в каталоге src / main / resources / weblogic.xml, и я хочу, чтобы он был помещен в WEB-INF после установки (кстати, упаковка - это "война")

Я пробовал это:

<resources>
            <resource>
                <directory>src/main/resources</directory>
                <targetPath>../resources</targetPath>
                <excludes><exclude>web.xml</exclude><exclude>weblogic.xml</exclude></excludes>
            </resource>
            <resource>
                <directory>src/main/resources/config</directory>
                <targetPath>..</targetPath>
                <includes><include>weblogic.xml</include></includes>
            </resource>
        </resources>

Это работает с установкой, но когда я хочу, чтобы classpath использовал eclipse: eclipse, выдает ошибку:

Описание Путь к ресурсу Тип расположения Невозможно вложить выходную папку «ResponseManager / target / WEB-INF / resources» в выходную папку ResponseManager / target / WEB-INF 'ResponseManager Путь сборки Задача пути

из-за этого conf в classpath:

  <classpathentry kind="src" path="src/main/resources" output="target/WEB-INF/resources" excluding="web.xml|weblogic.xml|**/*.java"/>
  <classpathentry kind="src" path="src/main/resources/config" output="target/WEB-INF" including="weblogic.xml" excluding="**/*.java"/>

Есть идеи?

1 Ответ

6 голосов
/ 05 декабря 2011

Обычно файлы в src/main/resources упаковываются вместе с скомпилированными файлами классов, в веб-приложении они помещаются в WEB-INF/classes. Есть ли причина, по которой вы не можете поместить их под стандартный путь src/main/webapp?

Если вам нужно упаковать дополнительные файлы, которых нет в папке src/main/webapp, то лучше настроить эти ресурсы в плагине war следующим образом:

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-war-plugin</artifactId>
    <version>2.1</version>
    <configuration>
        <webResources>
            <resource>
                <directory>src/main/config</directory>
                <targetPath>WEB-INF</targetPath>
                <includes>
                    <include>weblogic.xml</include>
                </includes>
            </resource>
        </webResources>                    
    </configuration>
</plugin>

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

...