Плагин Jetty Maven игнорирует пользовательский webdefault.xml

Я пытаюсь обойти общую проблему блокировки статических файлов Jetty в Windows с помощью метода установки useFileMappedBuffer на false в webdefault.xml. К сожалению, каждый раз, когда Jetty не собирает мой настроенный файл webdefault.xml.

Я использую Apache Maven 3.0.2. Я пробовал использовать maven-jetty-plugin (v6.1.26) и jetty-maven-plugin (v8.0.0.M2), но без разницы. Я попытался запустить чистую и перестроить, а также запустить Jetty.

Я проверял каждый раз, когда мой webdefault.xml был взят из той же версии, что и плагин, и имеет правильные настройки, а именно, только изменяя этот параметр с true на false:

...
<init-param>
  <param-name>useFileMappedBuffer</param-name>
  <param-value>false</param-value>
</init-param>
...

И вот как выглядит мой плагин pom.xml Jetty:

<plugin>
    <groupId>org.mortbay.jetty</groupId>
    <artifactId>maven-jetty-plugin</artifactId>
    <configuration>
        <contextPath>/</contextPath>
        <webDefaultXml>src/main/resources/webdefault.xml</webDefaultXml>
    </configuration>
</plugin>

Я также попытался изменить путь к моему файлу:

<webDefaultXml>${basedir}/src/main/resources/webdefault.xml</webDefaultXml>

Всюду я видел это точное решение, и похоже, что он работает для других (хотя я нашел один случай, когда у кого-то была проблема). Запуск для причала имеет это на выходе:

> mvn jetty:run
...
[INFO] Web defaults = org/eclipse/jetty/webapp/webdefault.xml
[INFO] Web overrides = none
...

Это заставляет меня думать, что это не применяется. Все остальные пути верны на выходе.

Моя самая непосредственная проблема, которую я вижу при запуске Jetty, заключается в том, что всякий раз, когда я редактирую статический файл (JavaScript, CSS и т.д.) с IntelliJ IDEA 10, я получаю это сообщение об ошибке:

Cannot save file:
D:\...\... (The requested operation cannot be performed on a file with a user-mapped section open)

После того, как я закрою Jetty, это сэкономит только штраф. Это происходит каждый раз.

Любые идеи, что я могу делать неправильно? Спасибо заранее.

Ответ 1

Я нашел совершенно другой документ для нового плагина Jetty jetty-maven-plugin (v8.0.0.M2), и похоже, что имя конфигурации изменилось:

http://wiki.eclipse.org/Jetty/Reference/webdefault.xml#Using_the_Jetty_Maven_Plugin

<project>
    ...
    <plugins>
        <plugin>
            ...
            <artifactId>jetty-maven-plugin</artifactId>
            <configuration>
                <webAppConfig>
                  ...
                  <defaultsDescriptor>/my/path/to/webdefault.xml</defaultsDescriptor>
                </webAppConfig>
            </configuration>
        </plugin>
        ...
    </plugins>
    ...
</project>

Теперь это похоже на новый плагин. Я все еще не уверен, почему плагин v6 не подбирает настроенную конфигурацию.