5

私はmaven 3.0.4を使用していJRE 1.7.0_09ます。すべてのテストに合格し、すべてが良さそうに見える場合mvn clean install、これが私の確実なプラグイン構成です。

<plugin>
    <version>2.12.4</version>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-surefire-plugin</artifactId>
    <configuration>
        <!-- -XX:-UseSplitVerifier is for java 7 -->
        <argLine>-XX:-UseSplitVerifier</argLine>
    </configuration>
</plugin> 

さて、mvn cobertura:coberturaいくつかのテストで次のようなエラーが発生した場合:

Expecting a stackmap frame at branch target .... そして、JRE7を使用して実行されていないことを私に理解させたいくつかのエラー(たとえばEncountered " "|" "| "" at line...

これが私のcoberturaプラグイン構成です:

<plugin>
    <groupId>org.codehaus.mojo</groupId>
    <artifactId>cobertura-maven-plugin</artifactId>
    <version>2.5.1</version>
    <configuration>
       <formats>
          <format>html</format>
          <format>xml</format>
       </formats>
       </configuration>
  </plugin>

そして、レポートは次のとおりです。

<reporting>
    <plugins>
        <plugin>
           <groupId>org.codehaus.mojo</groupId>
           <artifactId>cobertura-maven-plugin</artifactId>
           <version>2.5.1</version>
           <configuration>
               <formats>
                   <format>html</format>
                   <format>xml</format>
               </formats>
            </configuration>
        </plugin>
    </plugins>
</reporting>

この問題について話している多くのスレッドを見ましたが、解決策はこの行を追加する<argLine>-XX:-UseSplitVerifier</argLine>ことですが、役に立ちません。

ここで何が間違っていますか?

4

3 に答える 3

1

これに加えて、私たちが抱えていた問題は、Cobertura と Xalan/Xerces のバージョンに関するものでした。

http://mojo.codehaus.org/cobertura-maven-plugin/dependencies.htmlを見ると、cobertura プラグインが Xalan 2.6.0 と Xerces at 2.6.2 に Transitive Dependencies を持っていることがわかります。

これに対抗するために、私は以下を追加しました:

<dependency>
    <groupId>xalan</groupId>
    <artifactId>xalan</artifactId>
    <version>2.7.1</version>
    <scope>test</scope>
</dependency>
<dependency>
    <groupId>xerces</groupId>
    <artifactId>xercesImpl</artifactId>
    <version>2.11.0</version>
    <scope>test</scope>
</dependency>

そして、surefire を使用した初期テスト フェーズと cobertura フェーズの両方で、テストに合格しました。

于 2013-11-15T12:45:02.207 に答える