2013-08-06 14 views
17

Kısa bir süre önce Cobertura eklentisini Java/Spring-MVC projeme ekledim.Maven'den geçen, ancak Cobertura aracılığıyla başarısız olan testler: "Branch target 65'te bir stackmap çerçevesi bekleniyor"

Expecting a stackmap frame at branch target 65 in method xxx.xxxx.xxxx.xxxx;)V at offset 40 

: garip bir şey bütün birim testleri geçen edildi ve Maven'in ilk deneme yaptığında hala geçmesine ama sonra Cobertura hepsi aynı hata iletisiyle başarısız testleri çalıştırmayı denediğinde olmasıdır Bunun neden olduğu hakkında hiçbir fikrim yok ve bunu düzeltmek için nasıl gidileceğini bile bilmiyorum. İnterneti araştırdım ama benzer bir problem bulamadım. Test için JUnit ve spring-test-mvc kullanıyorum.

Bunu daha önce gören oldu mu?

+0

Bu SO yayınlanan çok benzer sorularla, ortak bir sorun olarak görünmektedir. Bu sorunu çözdüğümüze karar verdim: http://stackoverflow.com/a/20001391/1279002 – theINtoy

+1

Cobertura-maven-plugin version 2.4 kullanırken aynı problemi yaşadım. Cobertura-maven eklentisini 2.7 sürümüne yükselttiğimde hem JDK_1.7.0_79 hem de JDK_1.8.0_45 için çalıştı. – user2432405

cevap

19

Tabii ben

sorun Cobertura Java 1.7 ile çalışan sorun olmasıdır ... oldukça süre önce aradığınız rağmen soruyu soran sonra cevap hakkı bulabilirsiniz. Aşağıdaki satırı, yapılandırma elemanına girmeniz gerekmektedir. beklendiği gibi

 <plugin> 
     <groupId>org.codehaus.mojo</groupId> 
      <artifactId>cobertura-maven-plugin</artifactId> 
      <version>2.5.1</version> 
      <configuration> 
       <argLine>-XX:-UseSplitVerifier</argLine> 
       <formats> 
        <format>xml</format> 
       </formats> 
      </configuration> 
      <executions> 
       <execution> 
        <phase>test</phase> 
        <goals> 
         <goal>cobertura</goal> 
        </goals> 
       </execution> 
      </executions> 
     </plugin> 

Şimdi her şey çalışır: Burada tüm Cobertura bölümdür. Yeni eklentiyi kullanarak Sabit

+0

O halde lütfen sorumu tekrar gönderin. :-) – Jagger

+6

Cobertura 2.6 da bunu düzeltir. –

3

    <plugin> 
         <groupId>org.codehaus.mojo</groupId> 
         <artifactId>cobertura-maven-plugin</artifactId> 
         <version>2.7</version> 
         <configuration> 
          <formats> 
           <format>xml</format> 
          </formats> 
         </configuration> 
         <executions> 
          <execution> 
           <phase>package</phase> 
           <goals> 
            <goal>cobertura</goal> 
           </goals> 
          </execution> 
         </executions> 
        </plugin> 
+0

EVET! -Noverify denedim, -XX: -UseSplitVerifier çalıştı ve şans yoktu. Ben java 1.8 kullanıyorum ve bu benim için çalıştı. Bu 4 saat geçirdim! Umarım aynı konuya sahip diğer insanlar bu cevaba rastlar – Mason