我正在尝试为我的Java项目编写homebrew公式。我正在使用buck来构建项目,这需要从Maven下载一些jar文件。
例如,我的BUCK
文件包含:
remote_file(
name = 'guava-jar',
out = 'guava-21.0.jar',
url = 'mvn:com.google.guava:guava:jar:21.0',
sha1 = '3a3d111be1be1b745edfa7d91678a12d7ed38709',
)
prebuilt_jar(
name = 'guava',
source_jar = ':guava-jar',
binary_jar = ':guava-jar',
javadoc_url = 'https://google.github.io/guava/releases/21.0/api/docs/',
)
在我的公式中,我有一行来获取这些罐子:
system 'buck fetch :my-project'
然而,下载的jar失败了:
无法下载:mvn:com.google.guava:guava:jar:21.0
Homebrew是否对我的命令应用了一些限制(例如阻止Web请求)?
如何在Homebrew公式中从Maven中提取文件?
答案 0 :(得分:1)
我的错误是在我的项目文件夹中我有.buckconfig
,但在Homebrew区域我没有。这意味着未正确设置Maven URL,导致下载失败。
解决方案是在我的Homebrew公式中添加额外的步骤,生成.buckconfig
:
buckconfig = File.new('.buckconfig', 'w')
buckconfig.puts("[download]\n" +
"maven_repo = http://repo.maven.apache.org/maven2/\n" +
"in_build = true\n")
buckconfig.close