我的工作区中有以下maven_jar:
maven_jar(
name = "com_google_code_findbugs_jsr305",
artifact = "com.google.code.findbugs:jsr305:3.0.1",
sha1 = "f7be08ec23c21485b9b5a1cf1654c2ec8c58168d",
)
在我的项目中,我通过@com_google_code_findbugs_jsr305//jar
引用它。但是,我现在希望依赖于引用@com_google_code_findbugs_jsr305
而没有jar目标的第三方库。
我尝试同时查看bind
和alias
,但alias
无法在WORKSPACE中应用,bind
似乎不允许您将目标定义为外部库。
我可以重命名我使用的版本,因此它不会发生冲突,但这感觉就像是错误的解决方案。
答案 0 :(得分:2)
IIUC,您的代码需要依赖于RewriteCond %{HTTPS} !=on
RewriteRule .? https://blog.ryangiglio.com%{REQUEST_URI} [END,QSA,R=301]
和@com_google_code_findbugs_jsr305//jar
。不幸的是,没有任何预先构建的规则为这两个目标生成BUILD文件,因此您基本上必须自己定义BUILD文件。幸运的是,@ jart已经在你链接的the closure rule中为你编写了大部分内容。在line 69添加以下内容之后,您只需添加@com_google_code_findbugs_jsr305//:com_google_code_findbugs_jsr305
几行:
//jar:jar
这会在存储库中创建一个repository_ctx.file(
'jar/BUILD',
"\n".join([
"package(default_visibility = '//visibility:public')"] + _make_java_import('jar', '//:com_google_code_findbugs_jsr305.jar')
(或等效的//jar:jar
)目标。