Her modülün global entegrasyon testlerine katılabildiği birkaç yuvalanmış Maven projesi var. küresel, çok modül kapsama sahip olmak için, ben değişken Maven ${session.executionRootDirectory}
kullanarak, kullanmak ve modüller genelinde aynı dosyayı paylaşmak jacoco yapılandırılmış ettik:
<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>
Bu şekilde, aynı veri dosyası her modül tarafından kullanılır, Alt modüller içinde ne kadar derin olursa olsun. Kontrol ettim, "mvn temiz yükleme" başlatılırken doğru bir veri dosyası jacoco tarafından üretildi.
Artık sorun, mvn sonar:sonar
başlatılırken görüntülenir. Eklentinin bu değişkeni gerçek yolla değiştiremeyeceği anlaşılıyor. @{session.executionRootDirectory}
kullanırken günlükleri
[INFO] JaCoCoItSensor: JaCoCo IT report not found: /home/tomcat/.jenkins/jobs/MYJOB/workspace/${session.executionRootDirectory}/target/jacoco-it.exec
daha iyi çalışmaz aşağıdaki görebilirsiniz.
Herhangi bir çözüm var mı?