Android: WorkletsPackage class name collision with react-native-worklets on RN 0.83+
まだ誰も着手していません。
評価
- 難易度
- 3/5
- 見積もり時間
- 1〜2日
- 初心者へのやさしさ
- 45/100
- issue の種類
- バグ
- 明瞭さ
- 明確に書かれている
- 活発さ
- 停滞
- 領域
- build-system, mobile
調査の方向性
Start by locating the Android WorkletsPackage declaration and its references, then review the react-native.config.js and MainApplication.kt workaround alongside the generated PackageList.java error. Rename the class and update its references so react-native-worklets-core and react-native-worklets can autolink together on React Native 0.83+ without ambiguous imports.
索引モデルが issue の本文から書いたものです。
説明
Description
On React Native 0.83+, react-native-worklets-core fails to compile on Android due to a class name collision with react-native-worklets (Reanimated 4 dependency).
Both packages export a class named WorkletsPackage, causing autolinking to generate ambiguous imports in PackageList.java.
Environment
- React Native: 0.83.1
- react-native-worklets-core: 2.0.0-beta.4
- react-native-worklets: 0.7.2 (peer dependency of Reanimated 4.2.1)
- react-native-vision-camera: 4.7.3
- react-native-reanimated: 4.2.1
Error
error: a type with the same simple name is already defined by the single-type-import of WorkletsPackage
import com.margelo.worklets.WorkletsPackage;
^
/android/app/build/generated/rncli/src/main/java/com/facebook/react/PackageList.java:86: error: reference to WorkletsPackage is ambiguous
Root Cause
react-native-worklets:com.swmansion.worklets.WorkletsPackagereact-native-worklets-core:com.margelo.worklets.WorkletsPackage
RN 0.83's stricter autolinking generates both imports, causing Java compilation failure.
Workaround
Exclude react-native-worklets-core from autolinking and manually register:
react-native.config.js:
module.exports = {
dependencies: {
'react-native-worklets-core': {
platforms: { android: null }
}
}
};
MainApplication.kt:
PackageList(this).packages.apply {
add(com.margelo.worklets.WorkletsPackage())
}
Proposed Fix
Rename the Java class to avoid collision:
WorkletsPackage→WorkletsCorePackage
This would align with the package name and prevent conflicts with Software Mansion's react-native-worklets.
Additional Context
- This only affects RN 0.83+ (confirmed working on RN 0.81.5)
- Both packages are required (VisionCamera needs worklets-core, Reanimated needs worklets)
- No JSI/C++ collision — purely Android autolinking issue
- The two packages coexist fine at the native layer (different C++ namespaces)
- 主要言語
- C++
- スター
- 791
- フォーク
- 65
- PR マージ指標
- 30日以内にマージされた PR はありません
環境構築
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
margelo/react-native-worklets-core のほかの issue
-
難易度 5/5 1週間以上 初心者へのやさしさ 35/100
margelo/react-native-worklets-core#271 · コメント 1 件 ·
-
難易度 4/5 3〜5日 初心者へのやさしさ 35/100
margelo/react-native-worklets-core#269 · リアクション 2 件 ·
-
難易度 3/5 1〜2日 初心者へのやさしさ 35/100
margelo/react-native-worklets-core#268 · コメント 2 件 ·
-
難易度 3/5 1〜2日 初心者へのやさしさ 72/100
margelo/react-native-worklets-core#267 · コメント 1 件 · リアクション 1 件 ·
-
難易度 2/5 1〜3時間 初心者へのやさしさ 20/100
margelo/react-native-worklets-core の issue をすべて見る
似ている issue
-
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100
KhronosGroup/Vulkan-Tutorial#524 ·
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 88/100
microsoft/onnxruntime-genai#2633 ·
メンテナーはふだん 1 日以内に返信
-
mapper bug
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 86/100
firebase/firebase-ios-sdk#16718 ·
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 88/100
tesseract-ocr/tesseract#4627 ·