这是import org.apache.spark.mllib.linalg.SparseVector
val vector = new SparseVector(891, Array(11, 20, 25, 27, 28, 50), Array(
0.35686135501086036, 8.194306936725383E-6, 7.62720047518819E-6,
9.354557510460644E-4, 5.633054601656321E-4, 2.5641516558812987E-5)
)
vector.indices
// res1: Array[Int] = Array(11, 20, 25, 27, 28, 50)
vector.values
// res2: Array[Double] = Array(0.35686135501086036, 8.194306936725383E-6, 7.62720047518819E-6,
// 9.354557510460644E-4, 5.633054601656321E-4, 2.5641516558812987E-5)
中JaCoCo
的配置,我的项目(build.gradle
)包含一个app
模块,在其中指定了此library
配置因为JaCoCo
只包含app
类。
Application
但是,我不确定自第一次执行task jacocoTestReport(type: JacocoReport, dependsOn: 'testDebugUnitTest') {
reports {
xml.enabled = true
html.enabled = true
}
def fileFilter = ['**/R.class', '**/R$*.class', '**/BuildConfig.*', '**/Manifest*.*', '**/*Test*.*', 'android/**/*.*']
def debugTree = fileTree(dir: "${buildDir}/intermediates/classes/debug", excludes: fileFilter)
def mainSrc = "${project.projectDir}/src/main/java"
sourceDirectories = files([mainSrc])
classDirectories = files([debugTree])
executionData = files("${buildDir}/jacoco/testDebugUnitTest.exec")
}
以来是如何/何时创建的,就像这样:
testDebugUnitTest.exec
,由于上述命令中的./gradlew clean jacocoTestReport
,clean
被清除了。目前,我不知道.exec
的生成方式/时间,因此将其手动复制到该位置。
这是我运行此命令时在logcat中输出的内容:
任务:myLibrary:jacocoTestReport跳过 14:10:16.642 [DEBUG] [org.gradle.internal.progress.DefaultBuildOperationExecutor]构建操作'任务:myLibrary:jacocoTestReport'已启动 14:10:16.642 [DEBUG] [org.gradle.api.internal.tasks.execution.ExecuteAtMostOnceTaskExecuter]开始执行任务':myLibrary:jacocoTestReport' 14:10:16.642 [INFO] [org.gradle.api.internal.file.collections.DirectoryFileTree]文件或目录'/ path / code / android / myLibrary / build / jacoco',未找到
答案 0 :(得分:0)
感谢this的发布,我了解到exec
和ec
是在我们第一次运行jacocoTestReport
任务(在build.gradle
中定义)时创建的: / p>
现在,每次运行测试时,这些任务都会执行,并且jacoco将以特定格式为这组测试生成覆盖率报告的原始文件。您可以在构建文件夹中找到Exec(用于单元测试和ec)(用于仪器测试)。