Repository: incubator-beam Updated Branches: refs/heads/master 74e1f83df -> 5f0288b44
Move example dependency on runners into a profile Even an optional runtime dependency, such as from the examples to a runner, does get pulled in for testing. This meant that all the dependencies for all runners had to be resolvable in an integration testing context. It is quite inconvient. Explicitly excluding runners via flags such as `-pl !runners/spark` does not work since it causes errors in dependency resolution. This change adds a profile, active by default, that can be explicitly disabled to avoid pulling in dependencies. Project: http://git-wip-us.apache.org/repos/asf/incubator-beam/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-beam/commit/c17768f1 Tree: http://git-wip-us.apache.org/repos/asf/incubator-beam/tree/c17768f1 Diff: http://git-wip-us.apache.org/repos/asf/incubator-beam/diff/c17768f1 Branch: refs/heads/master Commit: c17768f14f5a57bcc2d83613818101f3b21e7260 Parents: 155409b Author: Kenneth Knowles <[email protected]> Authored: Thu Jul 7 19:41:45 2016 -0700 Committer: Kenneth Knowles <[email protected]> Committed: Thu Jul 7 19:41:45 2016 -0700 ---------------------------------------------------------------------- examples/java8/pom.xml | 63 +++++++++++++++++++++++++++++++++------------ 1 file changed, 47 insertions(+), 16 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-beam/blob/c17768f1/examples/java8/pom.xml ---------------------------------------------------------------------- diff --git a/examples/java8/pom.xml b/examples/java8/pom.xml index 61b8cb4..3cd1787 100644 --- a/examples/java8/pom.xml +++ b/examples/java8/pom.xml @@ -35,6 +35,53 @@ <packaging>jar</packaging> + <profiles> + + <!-- + A default profile that includes optional dependencies + on all of our runners. This is aimed at making it very + easy for users to run examples with any runner without + any configuration. It is not needed or desirable when + testing the examples with a particular runner. + + This profile can be disabled on the command line + by specifying -P !include-runners. + + This profile cannot be lifted to examples-parent because + it would be automatically deactivated when the Java 8 + profile were activated. + --> + <profile> + <id>include-runners</id> + <activation><activeByDefault>true</activeByDefault></activation> + <dependencies> + <dependency> + <groupId>org.apache.beam</groupId> + <artifactId>beam-runners-direct-java</artifactId> + <version>${project.version}</version> + <scope>runtime</scope> + <optional>true</optional> + </dependency> + + <dependency> + <groupId>org.apache.beam</groupId> + <artifactId>beam-runners-flink_2.10</artifactId> + <version>${project.version}</version> + <scope>runtime</scope> + <optional>true</optional> + </dependency> + + <dependency> + <groupId>org.apache.beam</groupId> + <artifactId>beam-runners-spark</artifactId> + <version>${project.version}</version> + <scope>runtime</scope> + <optional>true</optional> + </dependency> + </dependencies> + </profile> + </profiles> + <build> <plugins> <plugin> @@ -164,21 +211,5 @@ <groupId>com.google.api-client</groupId> <artifactId>google-api-client</artifactId> </dependency> - - <dependency> - <groupId>org.apache.beam</groupId> - <artifactId>beam-runners-direct-java</artifactId> - <version>${project.version}</version> - <scope>runtime</scope> - <optional>true</optional> - </dependency> - - <dependency> - <groupId>org.apache.beam</groupId> - <artifactId>beam-runners-flink_2.10</artifactId> - <version>${project.version}</version> - <scope>runtime</scope> - <optional>true</optional> - </dependency> </dependencies> </project>
