如何在 Homebrew 公式中下载 Buck 远程文件?
How do I download Buck remote files in a Homebrew formula?
我正在尝试编写一个 homebrew formula for my Java project. I am using 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 下载失败:
Unable to download: mvn:com.google.guava:guava:jar:21.0
Homebrew 是否对我的命令应用了一些限制(例如阻止网络请求)?
如何在 Homebrew 公式中从 Maven 中提取文件?
我的错误是在我的项目文件夹中有一个 .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
我正在尝试编写一个 homebrew formula for my Java project. I am using 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 下载失败:
Unable to download: mvn:com.google.guava:guava:jar:21.0
Homebrew 是否对我的命令应用了一些限制(例如阻止网络请求)?
如何在 Homebrew 公式中从 Maven 中提取文件?
我的错误是在我的项目文件夹中有一个 .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