@@ -48,7 +48,8 @@ object ScoverageSbtPlugin extends AutoPlugin {
4848 coverageOutputCobertura := true ,
4949 coverageOutputDebug := false ,
5050 coverageOutputTeamCity := false ,
51- coverageScalacPluginVersion := defaultScoverageVersion
51+ coverageScalacPluginVersion := defaultScoverageVersion,
52+ coverageSourceRoot := (ThisBuild / baseDirectory).value
5253 )
5354
5455 override def buildSettings : Seq [Setting [_]] = super .buildSettings ++
@@ -102,6 +103,9 @@ object ScoverageSbtPlugin extends AutoPlugin {
102103 Some (
103104 s " -P:scoverage:dataDir: ${coverageDataDir.value.getAbsolutePath}/scoverage-data "
104105 ),
106+ Some (
107+ s " -P:scoverage:sourceRoot: ${coverageSourceRoot.value.getAbsolutePath}"
108+ ),
105109 Option (coverageExcludedPackages.value.trim)
106110 .filter(_.nonEmpty)
107111 .map(v => s " -P:scoverage:excludedPackages: $v" ),
@@ -145,7 +149,11 @@ object ScoverageSbtPlugin extends AutoPlugin {
145149 1000
146150 ) // have noticed some delay in writing on windows, hacky but works
147151
148- loadCoverage(target, log) match {
152+ loadCoverage(
153+ target,
154+ log,
155+ coverageSourceRoot.value.getAbsoluteFile()
156+ ) match {
149157 case Some (cov) =>
150158 writeReports(
151159 target,
@@ -306,7 +314,11 @@ object ScoverageSbtPlugin extends AutoPlugin {
306314 )
307315 }
308316
309- private def loadCoverage (crossTarget : File , log : Logger ): Option [Coverage ] = {
317+ private def loadCoverage (
318+ crossTarget : File ,
319+ log : Logger ,
320+ sourceRoot : File
321+ ): Option [Coverage ] = {
310322
311323 val dataDir = crossTarget / " /scoverage-data"
312324 val coverageFile = Serializer .coverageFile(dataDir)
@@ -315,7 +327,10 @@ object ScoverageSbtPlugin extends AutoPlugin {
315327
316328 if (coverageFile.exists) {
317329
318- val coverage = Serializer .deserialize(coverageFile)
330+ val coverage = Serializer .deserialize(
331+ coverageFile,
332+ sourceRoot
333+ )
319334
320335 log.info(s " Reading scoverage measurements... " )
321336 val measurementFiles = IOUtils .findMeasurementFiles(dataDir)
0 commit comments