2014-09-24 9 views
10

मैवेन के माध्यम से मैं एक साधारण जाकोको रिपोर्ट करने की कोशिश कर रहा हूं और मुझे एक ही त्रुटि मिल रही है। यहां मेरी प्लगइन का एक स्निपेट है।मेवेन में JaCoCo को कॉन्फ़िगर करने में समस्या

<plugin> 
    <groupId>org.jacoco</groupId> 
    <artifactId>jacoco-maven-plugin</artifactId> 
    <version>0.7.2.201409121644</version> 
    <executions> 
     <execution> 
      <id>jacoco-check</id> 
      <goals> 
       <goal>check</goal> 
      </goals> 
      <configuration> 
       <rules> 
        <rule> 
         <element>PACKAGE</element> 
         <limits> 
          <limit> 
           <counter>LINE</counter> 
           <value>COVEREDRATIO</value> 
           <minimum>0.01</minimum> 
          </limit> 
         </limits> 
        </rule> 
       </rules> 
      </configuration> 
     </execution> 
    </executions> 
</plugin> 

जब मैं mvn clean install jacoco:check चलाने मैं निम्नलिखित मिल

लक्ष्य org.jacoco निष्पादित करने में विफल: jacoco-Maven-प्लगइन: 0.7.2.201409121644: परियोजना पर जांच (डिफ़ॉल्ट-CLI) ### ########: लक्ष्य org.jacoco के लिए मानकों 'नियम': jacoco-Maven-प्लगइन: 0.7.2.201409121644: जांच गुम या अमान्य कर रहे हैं -> [सहायता 1]

मैंने संस्करण को 0.6.3 से 0.7.2 और बीच के प्रत्येक संस्करण को बदलने का प्रयास किया। जहाँ तक मेरा बता सकते हैं इस 0.6.3 से अधिक आयु वालों के संस्करणों में से किसी के लिए मान्य config की तरह दिखता है और यहां तक ​​कि मूल रूप से नीचे दिए गए लिंक (मैं तो बस सब कुछ है, लेकिन जांच लक्ष्य निकाल) में पाया अपने स्वयं के उदाहरण से लिया गया है:

http://www.eclemma.org/jacoco/trunk/doc/maven.html

अगर मैं -X विकल्प मैं निम्नलिखित स्टैक ट्रेस पाने के साथ चलाएँ:

org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal org.jacoco:jacoco-maven-plugin:0.7.2.201409121644:check (default-cli) on project science-open: The parameters 'rules' for goal org.jacoco:jacoco-maven-plugin:0.7.2.201409121644:check are missing or invalid 
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:220) 
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153) 
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:145) 
    at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:108) 
    at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:76) 
    at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build(SingleThreadedBuilder.java:51) 
    at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:116) 
    at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:361) 
    at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:155) 
    at org.apache.maven.cli.MavenCli.execute(MavenCli.java:584) 
    at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:213) 
    at org.apache.maven.cli.MavenCli.main(MavenCli.java:157) 
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) 
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) 
    at java.lang.reflect.Method.invoke(Method.java:597) 
    at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:289) 
    at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:229) 
    at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:415) 
    at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:356) 
    at org.codehaus.classworlds.Launcher.main(Launcher.java:46) 
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) 
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) 
    at java.lang.reflect.Method.invoke(Method.java:597) 
    at com.intellij.rt.execution.application.AppMain.main(AppMain.java:134) 
Caused by: org.apache.maven.plugin.PluginParameterException: The parameters 'rules' for goal org.jacoco:jacoco-maven-plugin:0.7.2.201409121644:check are missing or invalid 
    at org.apache.maven.plugin.internal.DefaultMavenPluginManager.populatePluginFields(DefaultMavenPluginManager.java:584) 
    at org.apache.maven.plugin.internal.DefaultMavenPluginManager.getConfiguredMojo(DefaultMavenPluginManager.java:537) 
    at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:120) 
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:208) 
    ... 25 more 

क्या मैं गलत कर रहा हूँ?

उत्तर

11

इसका कारण यह है कि आप स्पष्ट लक्ष्य के साथ Maven का शुभारंभ:

mvn ... jacoco:check 

इस तरह चल रहा है, <execution> अंदर <configuration> अनुभाग पढ़ें नहीं है; , यह काम डिफ़ॉल्ट Maven चरण है जो करने के लिए jacoco:check लक्ष्य ही है, जो verify

mvn clean verify 

है या, वैकल्पिक रूप से का उपयोग करने के लिए (लेकिन मैं इस अपने आप को अभी की कोशिश नहीं कर सकते हैं और मैं 100% यकीन नहीं है), निष्पादन आईडी में default- उपसर्ग का उपयोग करने का प्रयास करें, जैसे:

<execution> 
     <id>default-jacoco-check</id> 
     <goals> 
      <goal>check</goal> 
     </goals> 
     [...] 
    </execution> 
संबंधित मुद्दे