更新插件的tarball时出现NativeScript错误:未能找到模块:“ foo”,相对于:app / tns_modules

时间:2018-08-02 14:45:31

标签: npm nativescript angular2-nativescript nativescript-angular nativescript-plugin

我有一个使用nativescript-adobe-marketing-cloud版本1.3.1的NativeScript应用程序。

它作为本地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_modulespackage-lock.jsonnpm-shinrkiwrap.json并进行全新安装,但这无济于事。

我的环境是:

tns-android 3.4.2
    tns-ios 3.4.1
        tns 3.4.3
       node 9.11.1
        npm 5.8.0

0 个答案:

没有答案