windows - jacoco som surefire argLine - Kommandolinjen er for lang

Indlæg af Hanne Mølgaard Plasc

Problem



Jeg kører Jacoco som en agent for surefire


<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-failsafe-plugin</artifactId>
    <version>2.18.1</version>
    <configuration>
        <argLine>${jacoco.agent.argLine}</argLine>
    </configuration>
</plugin>


Jeg konfigurerer Jacoco med en stor liste over udelukkelser (konstanter og mine udskrevne klasser) til min build-breaker.


<plugin>
    <groupId>org.jacoco</groupId>
    <artifactId>jacoco-maven-plugin</artifactId>
    <version>0.7.5.201505241946</version>
    <configuration>
        <excludes>
            <exclude>*/*Test</exclude>
            <exclude>*/*Constants*</exclude>
            <exclude>${jacoco.exclusions.list}</exclude>
        </excludes>
    </configuration>  


Hvad jeg får er, at når jeg går for at køre testene, får jeg fejlen:





 T E S T S
-------------------------------------------------------
The command line is too long.

Results :

Tests run: 0, Failures: 0, Errors: 0, Skipped: 0

[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------  


Er der en anden måde at passere udelukkelseslisten til Jacoco end på agentparameteren arglist på kommandolinjen? (Kig på koden ser det ikke ud) [5]


Mit spørgsmål er: Hvordan oversendes listen over udelukkelser til Jacoco-agenten, der kører i sikkerbrand end på kommandolinjen?

Bedste reference


JaCoCo Java Agent tillader i dag ikke at læse muligheder fra filer.


Du kan dog angive agent via miljøvariabel JAVA\_TOOL\_OPTIONS, som skulle have større størrelsesgrænse end kommandolinje. [6]


Også JaCoCo i offline-tilstand (uden agent) tillader konfiguration via fil jacoco-agent.properties. [7]