从maven的运行时类路径中排除目标/类

时间:2012-10-06 18:16:55

标签: eclipse maven

我在Eclipse中使用默认架构创建了一个新的maven项目。我想用特定的配置文件构建时执行rhino javascript。我的项目有以下几个方面:Dynamic Web Project 2.5,Java和Javascript。我没有课,只有静态网络文件。

当我尝试使用Maven运行时类路径编译以下配置文件时,收到错误消息:

Unable to access jarfile C:\Users\Francis\workspace\bulle\target\classes;C:\Users
\Francis\.m2\repository\rhino\js\1.7R2\js-1.7R2.jar.

为什么要尝试打开目标/类?如何从maven的类路径中排除它?

<plugin>
  <groupId>org.apache.maven.plugins</groupId>
  <artifactId>maven-antrun-plugin</artifactId>
  <version>1.7</version>
  <executions>
    <execution>
      <phase>compile</phase>
      <configuration>
        <target>
          <property name="runtime_classpath" refid="maven.compile.classpath" />
          <java jar="${runtime_classpath}" 
              classpath="org.mozilla.javascript.tools.shell.Main"
              fork="true" failonerror="true">
            <arg value="src/main/script/concat-all.js" />
          </java>
        </target>
      </configuration>
      <goals>
        <goal>run</goal>
      </goals>
    </execution>
  </executions>
</plugin>

1 个答案:

答案 0 :(得分:0)

${runtime_classpath}将插入Maven使用的整个“运行时”类路径字符串,而不是单个JAR文件。

尝试

      <java classpath="${runtime_classpath}" 
          classname="org.mozilla.javascript.tools.shell.Main"
          fork="true" failonerror="true">
        <arg value="src/main/script/concat-all.js" />
      </java>

请参阅Ant Java Task documentation