问题标签 [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 回答
213 浏览

android - DefaultApplicationLike 不适用于 AndroidStudio

我正在设置Exopackage

您需要从而DefaultApplicationLike不是扩展您的 Application 类android.app.Application

问题是2折:

  1. 从此类扩展会在您需要分配的 AndroidManfest.xml 文件中给出错误android:name=".App"

.App 不可分配给 android.app.Application

  1. 生命周期挂钩丢失。例如attachBaseContext(Context base)(来自Application的实现ContextWrapper

我对 Buck 的希望是我仍然可以使用 Android Studio IDE。

有没有办法让 DefaultApplicationLike 实现 Application 或另一种方法让 exopackage 与 Android Studio 项目一起工作?

0 投票
1 回答
576 浏览

java - 如何将自定义注释处理器与 Buck 一起使用?

正如标题所述 - 我想使用带有 Buck 的自定义 Java 注释处理器(例如 Dagger 1 / 2)。查看文档并没有显示任何与 Java(或 Android)相关的构建规则的任何明显的注释处理相关属性,而且我也找不到此场景的任何示例。

我确实在 GitHub 上找到了这个问题线程,但最近没有任何有意义的答案。

这是巴克仍然不支持的东西吗?如果没有,有没有人找到解决方法?

0 投票
1 回答
585 浏览

java - 降压 exopackage 多 dex 支持?

根据这个线程,Buck 目前没有完整的多 dexing 支持——至少在多 dexing 是如何通过“官方”解决方案解决的意义上没有。

我感到困惑的是:如果我只采用Exopackage方式,这个问题是否解决了?我仍然可以使用 Gradle 生成发布版本(慢),并使用 Buck 的 Exopackage 解决方案进行日常开发。

我知道 Exopackge 将生成一个主 shell .dex,其中包含辅助 dex 的加载代码。但是 Exopackage 构建会生成多个辅助 .dex 文件,还是只生成一个(这将再次达到 65k 方法计数限制)?

0 投票
2 回答
8065 浏览

react-native - 如何使用 buck 为 iOS 和 Android 构建 react-native 应用程序

Buck 听起来对于 iOS 和 Android 项目来说都是一个很棒的工具,但我还没有找到任何关于如何将它用于 react-native 项目的信息。

更新

看起来有一些工作正在进行中,但可能还不推荐。

https://github.com/facebook/nuclide/issues/31#issuecomment-164897170 https://github.com/facebook/buck/tree/master/test/com/facebook/buck/js

更新 2

产品痛点链接https://productpains.com/post/react-native/add-buck-as-a-build-option

0 投票
1 回答
203 浏览

buck - 降压:platform_linker_flags

如何为以下内容指定平台链接器标志:

  • 安卓
  • Mac OS X x86_64
  • Linux x86_64

在一个 cxx_library 目标中?

0 投票
1 回答
4716 浏览

android - Google Play 服务 - SafeParcelable 在哪里?

哪些粒度播放服务包含以下类?

com.google.android.gms.common.internal.safeparcel.SafeParcelable

我目前有以下依赖项,但在找不到 SafeParcelable 时出现错误。

  • 播放服务-base-8.4.0

  • 播放服务位置 8.4.0

  • 播放服务地图 8.4.0

万一这很重要,我将 Buck 用于我的 Android 项目,并直接从我的 m2repository 中包含这些 aars。

0 投票
1 回答
859 浏览

ios - 将静态库添加到 BUCK 文件以支持 React Native iOS 依赖项

在 Atom、Watchman 和 Buck 上安装 Nuclide 后,我尝试开始使用 Buck,但由于关于如何开始使用 Buck 和 React Native 的信息有限,我的项目设置遇到了麻烦。

到目前为止我所做的:

  1. 初始化模板 react-native 项目

    $ react-native init MyProject

  2. 创建空的 Buck 配置文件

    $ touch .buckconfig

  3. 为 iOS 初始化 Buck 模板(要有一个起点)

    $ buck quickstart --type -ios --dest-dir .

  4. 从 Buck 快速入门运行演示应用程序

    $ buck install --run demo_app_ios

  5. 然后我更改了 BUCK 文件上的设置,使其指向步骤 1 中的初始 React Native 项目。我还删除了从 Buck 模板生成的所有文件(当然除了 BUCK 文件)

  6. 当我尝试使用 buck 构建时,出现以下错误:

    fatal error: 'RCTRootView.h' file not found

这是由于 Buck 没有找到 React Native 依赖项。我一直在尝试使用指令apple_library()prebuilt_cxx_library()在 BUCK 文件中添加依赖项,但没有成功。

如果有人能告诉我我是否走在正确的轨道上,或者给我任何关于如何继续我的设置的指示,我将不胜感激

0 投票
2 回答
514 浏览

android - Buck:传递依赖

主项目 A (APK) 依赖于子项目 B (AAR)。A 和 B 都依赖于 C (AAR)。问题是 C 包含两次,这导致:

“values.xml:XXX:错误:属性“YYY”已被定义”

如何从最终 APK 中排除瞬态依赖 C?

项目一:

子项目B

C 是“appcompat-v7.aar”。
注意:A 在“A/libs”中包含 C,B 在“B/libs”中包含 C。

0 投票
3 回答
12308 浏览

android - 没有使用 Buck 找到类“android.support.design.widget.CoordinatorLayout”

我正在尝试让 Buck 使用 Android Studio 中的 balnk 应用程序模板。

apps/snappy/BUCK

res/snappy/layout/activity_main.xml

res/BUCK

libs/BUCK

输出

编辑:我的 apk 在其 dex 文件 btw 中包含 CoordinatorLayout 类

EDIT2:完整的代码可以在这里找到https://github.com/vinz243/snappy

EDIT3:尝试从 AppCompatActivity 扩展:

这是 MainActivity.java:

编辑 5:

通过向 deps 添加支持 v4 来修复上述错误。现在我在运行时得到:

0 投票
1 回答
1534 浏览

ios - 如何将 Facebook 的 Buck Build 安装到现有的 Xcode 项目中?

我在使用现有 Xcode 项目安装 Buck 时遇到问题。不过,我能够成功地让它与示例项目一起工作。当我尝试对我的项目执行此操作时,会出现各种错误,例如Error: Could not find or load main class com.facebook.buck.cli.bootstrapper.ClassLoaderBootstrapper. 关于如何成功添加它的一些分步说明是什么?