如何让maven jetty插件知道其他网络目录?

时间:2012-04-07 18:50:37

标签: javascript maven jetty

我想使用src / main / javascript作为我的javascript文件的源目录,同时仍然使用src / main / webapp来处理大多数其他web文件,但maven jetty:run plugin默认情况下不知道这个目录。

以下是我到目前为止所得到的但似乎并没有让Jetty知道我的javascript目录:

<build>
  <plugins>
    <plugin>
      <groupId>org.mortbay.jetty</groupId>
      <artifactId>maven-jetty-plugin</artifactId>
      <version>6.1.12</version>
      <configuration>
        <webAppConfig>
          <contextPath>/${project.artifactId}</contextPath>
          <extraClasspath>target/classes/:src/main/javascript</extraClasspath>
        </webAppConfig> 
        <webResources>
          <resource>
            <directory>src/main/webapp</directory>
            <directory>src/main/javascript</directory>
          </resource>
        </webResources>
      </configuration>
    </plugin>

如何让maven jetty插件知道这个addtional web目录?

3 个答案:

答案 0 :(得分:5)

看起来这可以帮到你:

所以我修改你的配置如下:

<plugin>
  <groupId>org.mortbay.jetty</groupId>
  <artifactId>maven-jetty-plugin</artifactId>
  <version>6.1.12</version>
  <configuration>
    <webAppConfig>
      <contextPath>/${project.artifactId}</contextPath>
      <!-- Javascript files are not java class files, so you can skip this
      <extraClasspath>target/classes/:src/main/javascript</extraClasspath>
      -->
      <baseResource implementation="org.mortbay.resource.ResourceCollection">
        <resourcesAsCSV>src/main/webapp,src/main/javascript</resourcesAsCSV>
      </baseResource>
    </webAppConfig> 
  </configuration>
</plugin>

答案 1 :(得分:2)

请注意,ResourceCollection类已在最新版本的Jetty(9.3.0.M2)中移动。

因此,实施应指向org.eclipse.jetty.util.resource

<plugin>
  <groupId>org.eclipse.jetty</groupId>
  <artifactId>maven-jetty-plugin</artifactId>
  <version>9.3.0.M2</version>
  <configuration>
    <webAppConfig>
      <baseResource implementation="org.eclipse.jetty.util.resource.ResourceCollection">
        <resourcesAsCSV>src/main/webapp,src/main/javascript</resourcesAsCSV>
      </baseResource>
    </webAppConfig> 
  </configuration>
</plugin>

答案 2 :(得分:0)

截至 Jetty 9

<webApp>
  <contextPath>/my-app</contextPath>
  <resourceBases>
    <resourceBase>${project.basedir}/src/main/webapp</resourceBase>
    <resourceBase>${project.basedir}/external-static</resourceBase>
  </resourceBases>
</webApp>