LinusU / LinusU/react-native-get-random-values

android builds fails due to duplicate class with react-native-random-uuid

Aperta
#44 2 commenti 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Lingua principale
JavaScript
Stelle
415
Fork
63
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Descrizione

ive been looking into generating random values in react-native. i found this library at first and used it together with the `uuid` library. i then saw this issue: https://github.com/LinusU/react-native-get-random-values/issues/32

where someone suggested to add `crypto.randomUUID()` too. to keep the library clean, you made a new library: https://github.com/LinusU/react-native-random-uuid

i then installed that library to try it as well. then when i build the android app the build fails and i get an error like this:

```
* What went wrong:
Execution failed for task ':app:mergeLibDexDevelopmentDebug'.
> 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:
Type org.linusu.BuildConfig is defined multiple times: /Users/adb/dev/APP_NAME/node_modules/react-native-get-random-values/android/build/.transforms/aa2fd757f1fb328047e3f797775fb731/transformed/classes/classes.dex, /Users/adb/dev/APP_NAME/node_modules/react-native-random-uuid/android/build/.transforms/ce3394d28852a5322f9e5e76c2b08d87/transformed/classes/classes.dex
Learn how to resolve the issue at https://developer.android.com/studio/build/dependencies#duplicate_classes.
```

with a link to: https://developer.android.com/build/dependencies?buildsystem=ndk-build#duplicate_classes

i think the problem lies here:

> Type org.linusu.BuildConfig is defined multiple times

i dont know if this value can even be changed. i know some package names cannot be changed after they have been released.

this may not be a problem realistically, as there may not be a reason to have both libraries installed at the same time. i was just experimenting to see how they worked.

the build was also successful as soon as a deleted `react-native-get-random-values`.

also as a sidenote, im not sure if this is also the case for ios. i currently have some unrelated problems with some ios pods which means i cant even install pods successfully. maybe someone else can test it out to see if it also happens on ios.

Guida per i contributori

Nessuna guida per i contributori indicizzata per questo repository

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Direzione di ricerca

Reproduce the Android build with both react-native-get-random-values and react-native-random-uuid installed, starting with the mergeLibDexDevelopmentDebug failure. Inspect the two Android build outputs for the duplicate org.linusu.BuildConfig definition; done means the cause and a compatible outcome for both libraries are established, with iOS checked separately if relevant.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
android, javascript, react-native
Ambito
build-system, mobile
Tipo di issue
Bug
Difficoltà
4/5
Tempo stimato
3-5 giorni
Stato di attività
Ferma
Chiarezza
Abbastanza chiara
Idoneità per principianti
30/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.