diff --git a/runners/google-cloud-dataflow-java/src/main/java/org/apache/beam/runners/dataflow/DataflowRunner.java b/runners/google-cloud-dataflow-java/src/main/java/org/apache/beam/runners/dataflow/DataflowRunner.java index 1b03cc10351e..97583d76d09f 100644 --- a/runners/google-cloud-dataflow-java/src/main/java/org/apache/beam/runners/dataflow/DataflowRunner.java +++ b/runners/google-cloud-dataflow-java/src/main/java/org/apache/beam/runners/dataflow/DataflowRunner.java @@ -1592,7 +1592,9 @@ public DataflowPipelineJob run(Pipeline pipeline) { String fileLocation = firstNonNull(options.getTemplateLocation(), options.getDataflowJobFile()); checkArgument( - fileLocation.startsWith("/") || fileLocation.startsWith("gs://"), + fileLocation.startsWith("/") + || new File(fileLocation).isAbsolute() + || fileLocation.startsWith("gs://"), "Location must be local or on Cloud Storage, got %s.", fileLocation);