Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Android] Can not test the example app in release mode #774

Open
1 of 2 tasks
ISnowFoxI opened this issue Feb 20, 2025 · 1 comment
Open
1 of 2 tasks

[Android] Can not test the example app in release mode #774

ISnowFoxI opened this issue Feb 20, 2025 · 1 comment
Labels
bug Something isn't working

Comments

@ISnowFoxI
Copy link

Description

I have built a small library using nitro-modules but when I run yarn android --mode release command, the app doesn't build. It fails with the following error.

Type com.facebook.fbreact.specs.NativeAccessibilityInfoSpec is defined multiple times:

* What went wrong:
Execution failed for task ':app:mergeDexRelease'.
> A failure occurred while executing com.android.build.gradle.internal.tasks.DexMergingTaskDelegate
   > There was a failure while executing work items
      > A failure occurred while executing com.android.build.gradle.internal.tasks.DexMergingWorkAction
         > com.android.builder.dexing.DexArchiveMergerException: Error while merging dex archives: 
           Learn how to resolve the issue at https://developer.android.com/studio/build/dependencies#duplicate_classes.
           Type com.facebook.fbreact.specs.NativeAccessibilityInfoSpec is defined multiple times: /Users/user/Desktop/rn-sima-app-to-app/android/build/.transforms/fc48dddb342cbad626efc1aa92bb0c2f/transformed/bundleLibRuntimeToDirRelease/bundleLibRuntimeToDirRelease_dex/com/facebook/fbreact/specs/NativeAccessibilityInfoSpec.dex, /Users/user/Desktop/rn-sima-app-to-app/example/android/app/build/intermediates/external_libs_dex/release/mergeExtDexRelease/classes.dex

Packages

  • create-react-native-library
  • react-native-builder-bob

Selected options

Package name: rn-sima-app-to-app
Library type: Nitro modules

Link to repro

https://github.com/ISnowFoxI/rn-sima-app-to-app

Environment

System:
OS: macOS 15.3
CPU: (8) arm64 Apple M1 Pro
Memory: 273.69 MB / 16.00 GB
Shell:
version: "5.9"
path: /bin/zsh
Binaries:
Node:
version: 20.11.0
path: ~/.nvm/versions/node/v20.11.0/bin/node
Yarn:
version: 3.6.1
path: ~/.nvm/versions/node/v20.11.0/bin/yarn
npm:
version: 10.2.4
path: ~/.nvm/versions/node/v20.11.0/bin/npm
Watchman:
version: 2024.12.02.00
path: /opt/homebrew/bin/watchman
Managers:
CocoaPods:
version: 1.16.2
path: /opt/homebrew/bin/pod
SDKs:
iOS SDK:
Platforms:
- DriverKit 24.2
- iOS 18.2
- macOS 15.2
- tvOS 18.2
- visionOS 2.2
- watchOS 11.2
Android SDK:
API Levels:
- "30"
- "31"
- "32"
- "33"
- "34"
- "35"
Build Tools:
- 30.0.2
- 30.0.3
- 31.0.0
- 33.0.0
- 33.0.1
- 34.0.0
- 35.0.0
System Images:
- android-34 | Google APIs ARM 64 v8a
- android-34 | Google Play ARM 64 v8a
Android NDK: Not Found
IDEs:
Android Studio: 2024.2 AI-242.23726.103.2422.12816248
Xcode:
version: 16.2/16C5032a
path: /usr/bin/xcodebuild
Languages:
Java:
version: 17.0.12
path: /usr/bin/javac
Ruby:
version: 2.6.10
path: /usr/bin/ruby
npmPackages:
"@react-native-community/cli":
installed: 15.0.1
wanted: 15.0.1
react:
installed: 18.3.1
wanted: 18.3.1
react-native:
installed: 0.77.0
wanted: 0.77.0
react-native-macos: Not Found
npmGlobalPackages:
"react-native": Not Found
Android:
hermesEnabled: true
newArchEnabled: true
iOS:
hermesEnabled: true
newArchEnabled: false

@ISnowFoxI ISnowFoxI added the bug Something isn't working label Feb 20, 2025
@ISnowFoxI ISnowFoxI changed the title [Android] Cannot test the example app in release moda [Android] Cannot test the example app in release mode Feb 20, 2025
@ISnowFoxI ISnowFoxI changed the title [Android] Cannot test the example app in release mode [Android] Can not test the example app in release mode Feb 20, 2025
@ISnowFoxI
Copy link
Author

Commenting out the below code fixes it. The code is located in the build.gradle file of the library. I am curious whether this is important or not, if the example app has this already, why is it needed in the package file?

if (isNewArchitectureEnabled()) {
  apply plugin: "com.facebook.react"
}

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

1 participant