Skip to content

Commit

Permalink
[bazel] Allow maven deps to be excluded from pom files
Browse files Browse the repository at this point in the history
This follows the same naming convention used by Google's rules
for generating pom files (as we do with the maven_coordinates
tag). This is to allow us to be as compatible as possible.
  • Loading branch information
shs96c committed Aug 3, 2019
1 parent 000b82d commit 09610f3
Show file tree
Hide file tree
Showing 4 changed files with 18 additions and 2 deletions.
8 changes: 8 additions & 0 deletions java/maven.bzl
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,14 @@ def _has_maven_deps_impl(target, ctx):

coordinates = []
for tag in tags:
if tag == "maven:compile_only":
return MavenInfo(
coordinates = None,
maven_deps = depset(),
artifact_jars = depset(),
source_jars = depset(),
transitive_maven_deps = depset(),
)
if tag.startswith(_PREFIX):
coordinates.append(tag[len(_PREFIX):])
if len(coordinates) > 1:
Expand Down
3 changes: 3 additions & 0 deletions third_party/java/auto/BUILD.bazel
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,9 @@ maven_java_import(
coords = "com.google.auto:auto-common:jar:0.8",
jar = "auto-common-0.8.jar",
srcjar = "auto-common-0.8-sources.jar",
tags = [
"maven:compile_only",
],
deps = [
"//third_party/java/guava",
],
Expand Down
6 changes: 4 additions & 2 deletions third_party/java/rules.bzl
Original file line number Diff line number Diff line change
Expand Up @@ -2,15 +2,17 @@ def _add_maven_coords(tags, coords):
tags.append("maven_coordinates=" + coords)
return tags

def maven_java_import(name, coords, jar, srcjar = None, visibility = None, deps = None):
def maven_java_import(name, coords, jar, srcjar = None, visibility = None, deps = None, **kwargs):
tags = _add_maven_coords(kwargs.pop("tags", default = []), coords)
native.java_import(
name = name,
tags = _add_maven_coords([], coords),
tags = tags,
jars = [jar],
srcjar = srcjar,
visibility = visibility,
deps = deps,
exports = deps,
**kwargs
)

def maven_java_library(name, coords, **kwargs):
Expand Down
3 changes: 3 additions & 0 deletions third_party/java/service/BUILD.bazel
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,9 @@ maven_java_import(
coords = "com.google.auto.service:auto-service:jar:1.0-rc4",
jar = "auto-service-1.0-rc4.jar",
srcjar = "auto-service-1.0-rc4-sources.jar",
tags = [
"maven:compile_only",
],
visibility = ["//visibility:private"],
deps = [
"//third_party/java/auto:auto-common",
Expand Down

0 comments on commit 09610f3

Please sign in to comment.