Lazerycode jmeter maven插件Java扩展下载排除依赖关系

问题描述:

我想在我的测试中使用Java采样器。 我有一个单独的Maven项目,我创建了我的扩展。建立项目后,我得到一个.jar库。包括我在我的Maven插件是这样的:Lazerycode jmeter maven插件Java扩展下载排除依赖关系

<dependencies> 
    <dependency> 
     <groupId>com.lazerycode.jmeter</groupId> 
     <artifactId>jmeter-maven-plugin</artifactId> 
     <version>2.2.0</version> 
    </dependency> 
    <dependency> 
     <groupId>com.qiagen</groupId> 
     <artifactId>qa_toolkit</artifactId> 
     <version>RELEASE</version> 
    </dependency> 
    <dependency> 
     <groupId>com.qiagen</groupId> 
     <artifactId>JMeterExtensions</artifactId> 
     <version>jmeter3.2.3</version> 
    </dependency> 
</dependencies> 

<build> 
    <plugins> 
     <plugin> 
      <groupId>com.lazerycode.jmeter</groupId> 
      <artifactId>jmeter-maven-plugin</artifactId> 
      <version>2.2.0</version> 
      <executions> 
       <execution> 
        <id>jmeter-tests</id> 
        <phase>verify</phase> 
        <goals> 
         <goal>jmeter</goal> 
        </goals> 
       </execution> 
      </executions> 
      <configuration> 
       <testFilesDirectory>${basedir}/src/test/jmeter/</testFilesDirectory> 
       <testFilesIncluded> 
        <jMeterTestFile>${jmxTest}</jMeterTestFile> 
       </testFilesIncluded> 
       <jmeterDirectory>${jmeter.home}</jmeterDirectory> 
       <jmeterExtensions> 
        <artifact>com.qiagen:JMeterExtensions:jmeter3.2.3</artifact> 
       </jmeterExtensions> 
       <propertiesUser> 
        <csvData>${basedir}/src/test/jmeter/${csvData}</csvData> 
        <threads>${threads}</threads> 
        <rampTime>${rampTime}</rampTime> 
        <loopCount>${loopCount}</loopCount> 
        <options>${options}</options> 
        <server>${server}</server> 
        <port>${port}</port> 
        <sleep>${sleep}</sleep> 
        <inputXmlFileDir>${inputXmlFileDir}</inputXmlFileDir> 
        <templatesCsv>${templatesCsv}</templatesCsv> 
        <xmlInputsCsv>${xmlInputsCsv}</xmlInputsCsv> 
        <reportScenariosCsv>${reportScenariosCsv}</reportScenariosCsv> 
       </propertiesUser> 
       <jMeterProcessJVMSettings> 
        <xms>2048</xms> 
        <xmx>2048</xmx> 
        <arguments> 
         <argument>-Xprof</argument> 
         <argument>-Xfuture</argument> 
        </arguments> 
       </jMeterProcessJVMSettings> 
      </configuration> 
     </plugin> 
    </plugins> 
</build> 

在我的扩展,我有一些无效的传递依赖这是我从扩展的pom.xml排除。我没有在依赖关系树中看到它们。

当我运行测试,对真正旗downloadExtensionDependencies,它看起来像它会尝试下载所有的依赖关系(还有那些除外),然后测试失败,因为无效依赖的。

Failed to collect dependencies at org.springframework:spring-webmvc:jar:3.1.1.RELEASE -> jasperreports:jasperreports:jar:2.0.5 -> commons-collections:commons-collections:jar:3.2.1.redhat-7: Failed to read artifact descriptor for commons-collections:commons-collections:jar:3.2.1.redhat-7: Could not transfer artifact org.apache.commons:commons-parent:pom:22-redhat-2 from/to jaspersoft (http://www.jasperforge.org/maven2): www.jasperforge.org: Unknown host www.jasperforge.org -> [Help 1] 

你有什么想法为什么插件试图下载排除的依赖关系吗?

+0

当你说你排除这些依赖关系,你的意思是他们排除在你的'pom.xml'?你可以分享那部分pom以显示这些排除情况吗? – palimpsestor

+0

您使用的是什么版本的插件?你能展示完整的pom吗? –

+0

我排除了我的扩展的pom.xml的依赖关系。有没有办法从主项目pom.xml中排除它们?我正在使用版本2.2.0 –

使用plugin的版本2.6.0,该版本现在具有更好的默认值,例如不下载可选依赖项。

,并以此来排除损坏或排除依赖:

<excludedArtifacts> 
    <exclusion>commons-pool2:commons-pool2</exclusion> 
    <exclusion>commons-math3:commons-math3</exclusion> 
    <exclusion>com.sun.jdmk:jmxtools</exclusion> 
    <exclusion>com.sun.jmx:jmxri</exclusion> 
</excludedArtifacts>