问题标签 [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.
java - 如何在 BUCK 中添加依赖项
当我导入诸如“org.json”之类的库时,出现错误。如果它是一个 maven 项目,我知道要在 POM 文件中添加依赖项,但是它是使用 BUCK 编译的,那么如何在 BUCK 中添加这个依赖项及其版本?
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 文件夹中,然后从那里执行所有内容。
buck - cxx_binary() 和 cxx_library() 的区别
两者有什么区别?在文档上,他们似乎有相同的论点?他们做同样的事情吗?除了官方文档,我还没有找到关于 Buck 的太多信息。
android - 将 C 库与 React Native 一起使用
我没有 Android 应用程序开发的背景,但我完成了一项任务,我需要将 C 库(用 C 编写的游戏引擎)与 android 应用程序一起使用。我有一些 NodeJS 的背景,因此决定使用它React Native
来构建这个将与 C 库通信的应用程序。我需要一些输入只是因为我在 Web 上找不到太多。一位朋友推荐我使用Buck
这个。我真的不知道这是否会有所帮助,但已经遇到了一些使用 buck 构建 android 应用程序的步骤,但它对我不起作用。
所以我做了以下步骤:
但这不起作用,并给出了一个错误,即 buck 项目引用了不存在的目录。这就是我所做的一切。
我会很感激这里的任何帮助。如果我能够创建一个小型应用程序,在其中可以在 C 代码和 react-native 之间来回发送参数,那将是一个非常好的起点。
c++ - Bazel:如何将标头整合到一个包含路径中
在 Buck 中,人们可能会这样写:
此行将使这些标头在 MediaLib/ 下可用。Bazel 中的等价物是什么?
python-2.7 - python buckw在构建硒时杀死错误
我正在尝试使用 Rakefile 位置中的命令“go”构建 selenium webdriver 项目,但它因以下错误而中止,
注意:Java 版本是 1.8,Python 版本是 2.7
错误:
vim - vim-syntastic 和没有扩展名的文件
我必须将buck用于一个项目,并且 syntastic 在 buck 的 TARGETS 文件中返回了很多错误。有没有办法/文档声明不应检查 TARGETS 文件?
我可以将默认行为设置为被动,但如果可能的话我想避免这种情况
python - 尝试编译降压时出错
我按照“从源代码构建”部分中的https://buckbuild.com/setup/getting_started.html中的说明尝试从 git checkout 构建 Buck 并得到以下错误。前提条件已正确安装。
我使用 Python 2 和 Python 3 进行了尝试。两种情况下的行为相同。
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 只在模块内使用,我不想将它暴露给其他模块怎么办?