问题标签 [buck]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
915 浏览

java - 如何在 BUCK 中添加依赖项

当我导入诸如“org.json”之类的库时,出现错误。如果它是一个 maven 项目,我知道要在 POM 文件中添加依赖项,但是它是使用 BUCK 编译的,那么如何在 BUCK 中添加这个依赖项及其版本?

0 投票
1 回答
238 浏览

python - 是否可以创建一个包含 JAR 作为依赖项的 pex?

我不是一个 Python 开发人员,所以如果这个问题没有多大意义,我很抱歉。

我目前正在一个项目中工作,该项目包含一个 py 脚本,该脚本与用 Java 编写的服务器进行通信。脚本的相当一部分专门用于根据正在执行脚本的当前工作目录 (cwd) 查找服务器 jar 所在的位置。我虽然可以将脚本和服务器 jar 打包成某种 zip,我可以以独立的方式分发和执行,从而删除从脚本中获取 jar 的整个逻辑。有可能吗?

我一直在尝试为此目的使用BUCK python_binary,但是,我似乎无法将 jar 添加为 pex 的依赖项。


编辑 1

根据@sdwilsh 的建议,我能够使用 BUCK 创建一个包含 jar 的 pex,但是,每当我尝试从主 python 脚本访问它时,它都会失败,因为找不到 jar:

降压文件

PEX 内容

包装器.py

输出为wrapper.py


编辑 2

因此,我们似乎无法从 PEX 环境中引用 jar 文件。一种解决方法是将 pex 资源解压缩到 tmp 文件夹中,然后从那里执行所有内容。

0 投票
1 回答
174 浏览

buck - cxx_binary() 和 cxx_library() 的区别

两者有什么区别?在文档上,他们似乎有相同的论点?他们做同样的事情吗?除了官方文档,我还没有找到关于 Buck 的太多信息。

0 投票
0 回答
625 浏览

android - 将 C 库与 React Native 一起使用

我没有 Android 应用程序开发的背景,但我完成了一项任务,我需要将 C 库(用 C 编写的游戏引擎)与 android 应用程序一起使用。我有一些 NodeJS 的背景,因此决定使用它React Native来构建这个将与 C 库通信的应用程序。我需要一些输入只是因为我在 Web 上找不到太多。一位朋友推荐我使用Buck这个。我真的不知道这是否会有所帮助,但已经遇到了一些使用 buck 构建 android 应用程序的步骤,但它对我不起作用。

所以我做了以下步骤:

但这不起作用,并给出了一个错误,即 buck 项目引用了不存在的目录。这就是我所做的一切。

我会很感激这里的任何帮助。如果我能够创建一个小型应用程序,在其中可以在 C 代码和 react-native 之间来回发送参数,那将是一个非常好的起点。

0 投票
2 回答
1728 浏览

c++ - Bazel:如何将标头整合到一个包含路径中

在 Buck 中,人们可能会这样写:

此行将使这些标头在 MediaLib/ 下可用。Bazel 中的等价物是什么?

0 投票
1 回答
207 浏览

python-2.7 - python buckw在构建硒时杀死错误

我正在尝试使用 Rakefile 位置中的命令“go”构建 selenium webdriver 项目,但它因以下错误而中止,

注意:Java 版本是 1.8,Python 版本是 2.7

错误:

0 投票
1 回答
42 浏览

vim - vim-syntastic 和没有扩展名的文件

我必须将buck用于一个项目,并且 syntastic 在 buck 的 TARGETS 文件中返回了很多错误。有没有办法/文档声明不应检查 TARGETS 文件?

我可以将默认行为设置为被动,但如果可能的话我想避免这种情况

0 投票
1 回答
883 浏览

c++ - 如何将 BUCK 构建与具有多个同名文件的 pod 一起使用?

我正在尝试将 BUCK 与Realm pod一起使用。

我已将我的 buck 文件设置为:

使用Airbnb的 pod 宏。

但是我无法构建我的项目,因为这失败了

我还尝试手动指定要包含的文件和标头,从这些 repos 中查看 PodSpec,但我无法让它工作,因为我当时缺少一些要在 Xcode 中编译的项目文件。

0 投票
0 回答
76 浏览

python - 尝试编译降压时出错

我按照“从源代码构建”部分中的https://buckbuild.com/setup/getting_started.html中的说明尝试从 git checkout 构建 Buck 并得到以下错误。前提条件已正确安装。

我使用 Python 2 和 Python 3 进行了尝试。两种情况下的行为相同。

0 投票
1 回答
182 浏览

ios - 我们可以限制 Swift 生成的接口只能在 Xcode 中从模块访问吗?

案子

一个模块(带有模块映射文件的静态库)在 iOS 应用程序代码库中具有混合代码(Objective-C + Swift)。Swift 代码只需要从模块中使用,所以所有需要的接口都是内部的

这里的文档说

因为生成的标头是框架公共接口的一部分,所以只有标有 public 或 open 修饰符的声明才会出现在框架目标的生成标头中。使用 internal 修饰符标记并在从 Objective-C 类继承的类中声明的方法和属性可供 Objective-C 运行时访问。但是,它们在编译时不可访问,并且不会出现在为框架目标生成的标头中。

在 XCode 上,我能够成功编译项目,但在使用BUCK构建的 CI 机器上失败,因为它无法找到模块内的 Objective C 代码内部定义的 Swift 方法。有效的解决方法是将这些方法公开。

我的疑惑:

  • 这是 XCode 中的一个错误,因为文档暗示我们想要从 Objective C 使用的 Swift 方法必须是公共的?
  • 我们是否需要将模块中所需的所有接口标记为public,即使我们在模块中使用它?

生成的标头是框架公共接口的一部分

  • 即使生成的头文件没有在模块映射(或伞头文件)中声明,它是否仍然是框架的公共接口?如果 Swift 只在模块内使用,我不想将它暴露给其他模块怎么办?