aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/tools/skylark
diff options
context:
space:
mode:
authorGravatar fzaiser <fzaiser@google.com>2017-10-18 10:27:49 -0400
committerGravatar John Cater <jcater@google.com>2017-10-18 13:34:42 -0400
commit1c3ee1a154fc63a127662ba9a83198c094075da9 (patch)
treee5feff1d0f6918fa6857eb075c553087651a4ccc /src/tools/skylark
parentb7be8d0fd834563b97fab05538225fbfecda7eb5 (diff)
Skylint: show a better error message if a file is not found
RELNOTES: none PiperOrigin-RevId: 172599144
Diffstat (limited to 'src/tools/skylark')
-rw-r--r--src/tools/skylark/java/com/google/devtools/skylark/skylint/Skylint.java17
1 files changed, 15 insertions, 2 deletions
diff --git a/src/tools/skylark/java/com/google/devtools/skylark/skylint/Skylint.java b/src/tools/skylark/java/com/google/devtools/skylark/skylint/Skylint.java
index efef66f75f..010d28460d 100644
--- a/src/tools/skylark/java/com/google/devtools/skylark/skylint/Skylint.java
+++ b/src/tools/skylark/java/com/google/devtools/skylark/skylint/Skylint.java
@@ -15,6 +15,7 @@
package com.google.devtools.skylark.skylint;
import java.io.IOException;
+import java.nio.file.NoSuchFileException;
import java.nio.file.Path;
import java.nio.file.Paths;
import java.util.ArrayList;
@@ -22,7 +23,7 @@ import java.util.List;
/** The main class for the skylint binary. */
public class Skylint {
- public static void main(String[] args) throws IOException {
+ public static void main(String[] args) {
List<Path> paths = new ArrayList<>();
List<String> disabledChecks = new ArrayList<>();
for (String arg : args) {
@@ -44,7 +45,19 @@ public class Skylint {
linter.disable(checkerName);
}
for (Path path : paths) {
- List<Issue> issues = linter.lint(path);
+ List<Issue> issues;
+ try {
+ issues = linter.lint(path);
+ } catch (IOException e) {
+ issuesFound = true;
+ if (e instanceof NoSuchFileException) {
+ System.err.println("File not found: " + path);
+ } else {
+ System.err.println("Error trying to read " + path);
+ e.printStackTrace();
+ }
+ continue;
+ }
if (!issues.isEmpty()) {
issuesFound = true;
for (Issue issue : issues) {