Meine allgemeine Frage: Ich baute eine native Komponente für react-native Android. Es hat eigene Abhängigkeiten und so. Ich befolgte Anweisungen, um die package.json zu bearbeiten, entfernte die Abhängigkeiten von react-native und teste nun das Paket. Gibt es etwas Spezielles, das man im Fall eines Pakets für reaktionsnative Systeme beachten sollte?Wie erstelle ich ein npm-Paket aus einem benutzerdefinierten reaktiven nativen Modul für Android?
Die Fehler/Warnungen erhalte ich:
Lassen Sie uns sagen, dass das Modul Ich baue wird react-native-mymodule
genannt.
Befehle Ich lief:
npm $ installieren reagieren-native-mymodule $ rnpm Link reagieren-native-mymodule
Wenn react-native run-android
ausgeführt wird, in dem Schritt :react-native-mymodule:bundleReleaseJsAndAssets
es den folgenden Fehler führt:
module.js:341
throw err;
^
Error: Cannot find module '/path/to/my/test/project/node_modules/react-native-mymodule/node_modules/react-native/local-cli/cli.js'
at Function.Module._resolveFilename (module.js:339:15)
at Function.Module._load (module.js:290:25)
at Function.Module.runMain (module.js:447:10)
at startup (node.js:146:18)
at node.js:404:3
:react-native-mymodule:bundleReleaseJsAndAssets FAILED
Bedeutet das, ich muss eine signierte APK für mein natives Modul generieren? Wenn ja, warum ist dies beim Erstellen eines nativen Moduls erforderlich?
ich zusätzlich die folgende Warnung viermal:
WARNING: Dependency test_project:react-native-mymodule:unspecified on project app resolves to an APK archive which is not supported as a compilation dependency. File: /path/to/my/test_project/node_modules/react-native-mymodule/android/app/build/outputs/apk/react-native-mymodule-release-unsigned.apk
Meine Suche im Internet und in den reagieren-native Dokumente bisher nicht erfolgreich gewesen.
Ich habe nicht die react-native Abhängigkeit, aber irgendwie will es nach '/ node_modules/react-native/local-cli/cli.js' suchen. Ich weiß nicht warum ... – Andru
Können Sie Ihre 'build.gradle' Datei in Ihrem Modul zeigen? nur ein paar Zeilen über 'apply plugin:" com.android.xxx "'. Ich denke, Ihre Konfiguration ist "com.android.application", es ist nicht "com.android.library". –
Ich hatte tatsächlich 'com.android.application' drin. Es zu 'com.android.library' zu ändern half nicht, auch das Entfernen anderer unnötiger Sachen aus dem' build.gradle' half nicht .. immer der gleiche Fehler .. – Andru