Ошибка NativeScript при обновлении архива плагина: не удалось найти модуль: "foo", относительно: app/tns_modules
У меня есть приложение NativeScript, которое использует nativescript-adobe-marketing-cloud
версия 1.3.1
,
Он установлен как местный tgz
так у меня есть файл nativescript-adobe-marketing-cloud-1.3.1.tgz
в корне проекта, и эта строка в package.json
файл:
"nativescript-adobe-marketing-cloud": "file:nativescript-adobe-marketing-cloud-1.3.1.tgz",
Я использую этот плагин в одном файле analytics.middleware.ts
где у меня есть что-то вроде этого:
import { AdobeAnalytics } from 'nativescript-adobe-marketing-cloud';
export const analyticsMiddleware: Function = store => next => action => {
AdobeAnalytics.getInstance().optIn();
...
AdobeAnalytics.getInstance().trackAction('action', { ... });
...
}
Все идет нормально.
Затем я расширил этот плагин, упаковал его и обновил tgz
файл и его запись в package.json
с помощью tns plugin add nativescript-adobe-marketing-cloud-1.5.0.tgz
, Подпись методов, которые я использую, не меняется, поэтому в коде ничего не обновляется. При выполнении tns run android/ios
все компилируется правильно, и приложение установлено в устройстве / эмуляторе. Однако, когда приложение запускается, оно вылетает со следующей ошибкой:
System.err: java.lang.RuntimeException: Unable to create application com.tns.NativeScriptApplication: com.tns.NativeScriptException:
System.err:
System.err: Error calling module function
System.err:
System.err: Error calling module function
System.err:
System.err: Error calling module function
System.err:
System.err: Error: com.tns.NativeScriptException: Failed to find module: "nativescript-adobe-marketing-cloud", relative to: app/tns_modules/
System.err: com.tns.Module.resolvePathHelper(Module.java:146)
System.err: com.tns.Module.resolvePath(Module.java:55)
System.err: com.tns.Runtime.runModule(Native Method)
System.err: com.tns.Runtime.runModule(Runtime.java:530)
System.err: com.tns.Runtime.run(Runtime.java:522)
System.err: com.tns.NativeScriptApplication.onCreate(NativeScriptApplication.java:19)
System.err: android.app.Instrumentation.callApplicationOnCreate(Instrumentation.java:1130)
System.err: android.app.ActivityThread.handleBindApplication(ActivityThread.java:5965)
System.err: android.app.ActivityThread.-wrap1(Unknown Source:0)
System.err: android.app.ActivityThread$H.handleMessage(ActivityThread.java:1755)
System.err: android.os.Handler.dispatchMessage(Handler.java:106)
System.err: android.os.Looper.loop(Looper.java:164)
System.err: android.app.ActivityThread.main(ActivityThread.java:6753)
System.err: java.lang.reflect.Method.invoke(Native Method)
System.err: com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:482)
System.err: com.android.internal.os.ZygoteInit.main(ZygoteInit.java:807)
System.err: File: "<unknown>, line: 1, column: 265
System.err:
System.err: StackTrace:
System.err: Frame: function:'require', file:'', line: 1, column: 266
System.err: Frame: function:'', file:'file:///data/data/appid/files/app/common/middleware/analytics/analytics.middleware.js', line: 7, column: 44
System.err: Frame: function:'require', file:'', line: 1, column: 266
System.err: Frame: function:'', file:'file:///data/data/appid/files/app/app.module.js', line: 22, column: 30
System.err: Frame: function:'require', file:'', line: 1, column: 266
System.err: Frame: function:'', file:'file:///data/data/appid/files/app/main.js', line: 6, column: 20
System.err: Frame: function:'require', file:'', line: 1, column: 266
Я пытался удалить node_modules
, package-lock.json
а также npm-shinrkiwrap.json
и делать новую установку, но это не помогло.
Моя среда это:
tns-android 3.4.2
tns-ios 3.4.1
tns 3.4.3
node 9.11.1
npm 5.8.0