@Override public void execute(@NonNull Lint lintTask) { lintTask.setDescription("Runs lint on all variants."); lintTask.setVariantName(""); lintTask.setGroup(JavaBasePlugin.VERIFICATION_GROUP); lintTask.setLintOptions(globalScope.getExtension().getLintOptions()); File sdkFolder = globalScope.getSdkHandler().getSdkFolder(); if (sdkFolder != null) { lintTask.setSdkHome(sdkFolder); } lintTask.setToolingRegistry(globalScope.getToolingRegistry()); lintTask.setReportsDir(globalScope.getReportsDir()); lintTask.setAndroidBuilder(globalScope.getAndroidBuilder()); } }
@TaskAction public void lint() throws IOException { AndroidProject modelProject = createAndroidProject(getProject()); if (getVariantName() != null && !getVariantName().isEmpty()) { for (Variant variant : modelProject.getVariants()) { if (variant.getName().equals(getVariantName())) { lintSingleVariant(modelProject, variant); } } } else { lintAllVariants(modelProject); } }
@Override public void execute(Lint lintTask) { lintTask.setDescription("Runs lint on all variants."); lintTask.setGroup(JavaBasePlugin.VERIFICATION_GROUP); lintTask.setLintOptions(getExtension().getLintOptions()); lintTask.setSdkHome(sdkHandler.getSdkFolder()); lintTask.setToolingRegistry(toolingRegistry); } });
@Override public void execute(@NonNull Lint task) { String variantName = scope.getVariantData().getVariantConfiguration().getFullName(); GlobalScope globalScope = scope.getGlobalScope(); task.setAndroidBuilder(globalScope.getAndroidBuilder()); // TODO: Make this task depend on lintCompile too (resolve initialization order first) task.setLintOptions(globalScope.getExtension().getLintOptions()); task.setSdkHome(checkNotNull( globalScope.getSdkHandler().getSdkFolder(), "SDK not set up.")); task.setVariantName(variantName); task.setToolingRegistry(globalScope.getToolingRegistry()); task.setReportsDir(globalScope.getReportsDir()); task.setFatalOnly(true); task.setDescription( "Runs lint on just the fatal issues in the " + variantName + " build."); } }
lintReleaseCheck.setLintOptions(getExtension().getLintOptions()); lintReleaseCheck.setSdkHome( checkNotNull(sdkHandler.getSdkFolder(), "SDK not set up.")); lintReleaseCheck.setVariantName(variantName); lintReleaseCheck.setToolingRegistry(toolingRegistry); lintReleaseCheck.setFatalOnly(true); lintReleaseCheck.setDescription( "Runs lint on just the fatal issues in the " + capitalizedVariantName + " build.");
@NonNull Variant variant, boolean report) { IssueRegistry registry = createIssueRegistry(); LintCliFlags flags = new LintCliFlags(); LintGradleClient client = new LintGradleClient(registry, flags, getProject(), modelProject, sdkHome, variant, getBuildTools()); if (fatalOnly) { if (lintOptions != null && !lintOptions.isCheckReleaseBuilds()) { syncOptions(lintOptions, client, flags, variant, getProject(), reportsDir, report, fatalOnly); abort();
List<LintBaseline> baselines = Lists.newArrayList(); for (Variant variant : modelProject.getVariants()) { Pair<List<Warning>,LintBaseline> pair = runLint(modelProject, variant, false); List<Warning> warnings = pair.getFirst(); warningMap.put(variant, warnings); LintCliFlags flags = new LintCliFlags(); LintGradleClient client = new LintGradleClient( registry, flags, getProject(), modelProject, sdkHome, variant, getBuildTools()); syncOptions(lintOptions, client, flags, null, getProject(), reportsDir, true, fatalOnly); abort();
@Override public void execute(@NonNull Lint lint) { GlobalScope globalScope = scope.getGlobalScope(); lint.setLintOptions(globalScope.getExtension().getLintOptions()); File sdkFolder = globalScope.getSdkHandler().getSdkFolder(); if (sdkFolder != null) { lint.setSdkHome(sdkFolder); } lint.setAndroidBuilder(globalScope.getAndroidBuilder()); lint.setVariantName(scope.getVariantConfiguration().getFullName()); lint.setToolingRegistry(globalScope.getToolingRegistry()); lint.setReportsDir(globalScope.getReportsDir()); lint.setDescription("Runs lint on the " + StringHelper .capitalize(scope.getVariantConfiguration().getFullName()) + " build."); lint.setGroup(JavaBasePlugin.VERIFICATION_GROUP); } }