sonar maven插件无法识别${session.executionRootDirectory}

sonar maven插件无法识别${session.executionRootDirectory},maven,sonar-maven-plugin,Maven,Sonar Maven Plugin,我有几个层次的嵌套Maven项目,每个模块都可以参与全局集成测试。为了实现全局多模块覆盖,我已经配置了jacoco,使用Maven变量${session.executionRootDirectory},使用并共享相同的文件accross modules: <execution> <id>pre-integration-test</id> <phase>pre-integration-test</phase> &l

我有几个层次的嵌套Maven项目,每个模块都可以参与全局集成测试。为了实现全局多模块覆盖,我已经配置了jacoco,使用Maven变量
${session.executionRootDirectory}
,使用并共享相同的文件accross modules:

<execution>
    <id>pre-integration-test</id>
    <phase>pre-integration-test</phase>
    <goals>
        <goal>prepare-agent-integration</goal>
    </goals>
    <configuration>
        <propertyName>jacoco.failsafeArgLine</propertyName>
        <destFile>${session.executionRootDirectory}/target/jacoco-it.exec</destFile>
    </configuration>
</execution>
当使用
@{session.executionRootDirectory}
时,它的效果并不好

有什么解决方法吗?

如下,建议使用以下配置:

<plugin>
    <groupId>com.github.goldin</groupId>
    <artifactId>properties-maven-plugin</artifactId>
    <version>0.2.5</version>
    <executions>
        <execution>
            <id>set-sonar.jacoco.reportPath</id>
            <goals>
                <goal>set-properties</goal>
            </goals>
            <phase>initialize</phase>
            <configuration>
                <rawProperties>
                    sonar.jacoco.itReportPath = ${session.executionRootDirectory}/target/jacoco-it.exec
                </rawProperties>
                <addDollar>true</addDollar>
            </configuration>
        </execution>
    </executions>
</plugin>

com.github.goldin
,然后我就能够使用Maven 3.2.3使一切正常工作

<plugin>
    <groupId>com.github.goldin</groupId>
    <artifactId>properties-maven-plugin</artifactId>
    <version>0.2.5</version>
    <executions>
        <execution>
            <id>set-sonar.jacoco.reportPath</id>
            <goals>
                <goal>set-properties</goal>
            </goals>
            <phase>initialize</phase>
            <configuration>
                <rawProperties>
                    sonar.jacoco.itReportPath = ${session.executionRootDirectory}/target/jacoco-it.exec
                </rawProperties>
                <addDollar>true</addDollar>
            </configuration>
        </execution>
    </executions>
</plugin>