Jetty 9 Maven插件未正确设置defaultsDescriptor

时间:2014-04-30 17:43:31

标签: java maven configuration jetty jetty-9

我目前正在使用Maven插件运行Jetty 9,其定义如下:

pom.xml

<properties>
  <jetty.version>9.1.3.v20140225</jetty.version>
</properties>

<pluginManagement>
  <plugins>
    <plugin>
      <groupId>org.eclipse.jetty</groupId>
      <artifactId>jetty-maven-plugin</artifactId>
      <version>${jetty.version}</version>
      <dependencies>
        <dependency>
          <groupId>org.ow2.asm</groupId>
          <artifactId>asm</artifactId>
          <version>${asm.version}</version>
        </dependency>
      </dependencies>
    </plugin>
  </plugins>
</pluginManagement>

网络项目pom.xml

<plugins>
  <plugin>
    <groupId>org.eclipse.jetty</groupId>
    <artifactId>jetty-maven-plugin</artifactId>
    <configuration>
      <httpConnector>
        <port>8888</port>
        <idleTimeout>60000</idleTimeout>
      </httpConnector>
      <scanIntervalSeconds>10</scanIntervalSeconds>
      <stopKey>StopTouchingMe</stopKey>
      <stopPort>8889</stopPort>
      <systemProperties>
        <systemProperty>
          <name>com.pearson.platformj.server.root</name>
          <value>${project.basedir}/target</value>
        </systemProperty>
      </systemProperties>
      <webApp>
        <contextPath>/</contextPath>
      </webApp>
      <webAppConfig>
        <defaultsDescriptor>src/main/resources/webdefault.xml</defaultsDescriptor>
      </webAppConfig>
    </configuration>
  </plugin>
</plugins>

我需要覆盖默认的webdefault.xml,以便我可以在Windows上进行开发。但是当我执行mvn jetty:run时,我看到了

[INFO] --- jetty-maven-plugin:9.1.3.v20140225:run (default-cli) @ web ---
[INFO] Configuring Jetty for project: web
[INFO] webAppSourceDirectory not set. Trying src\main\webapp
[INFO] Reload Mechanic: automatic
[INFO] Classes = E:\Ideas\xte\XTE\web\target\classes
[INFO] Context path = /
[INFO] Tmp directory = E:\Ideas\xte\XTE\web\target\tmp
[INFO] Web defaults = org/eclipse/jetty/webapp/webdefault.xml
[INFO] Web overrides =  none
[INFO] web.xml file = file:/E:/Ideas/xte/XTE/web/src/main/webapp/WEB-INF/web.xml
[INFO] Webapp directory = E:\Ideas\xte\XTE\web\src\main\webapp

如您所见,webdefault.xml是从默认位置提取的,而不是从指定位置提取的。任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:2)

问题是webAppConfigwebApp的别名,因此您应将其删除并将defaultsDescriptor添加到webApp代替:

<webApp>
    <contextPath>/</contextPath>
    <defaultsDescriptor>src/main/resources/webdefault.xml</defaultsDescriptor> 
</webApp>