离子平台命令失败'无法读取属性'拆分'未定义'无处不在

时间:2015-10-25 14:50:36

标签: ios node.js cordova npm ionic

我一直在使用相同的离子应用4到5个月。

我今天发布了应用程序商店,并且必须对我的环境进行一些更新才能编译。我没有特别记得会导致此问题的任何内容,但现在如果我尝试从此项目目录运行ionic platform add ios,则会失败并显示以下内容:

    $ ionic platform add ios
    Updated the hooks directory to have execute permissions
    Running command: /Users/Me/Source/Repos/mobile-app/hooks/before_platform_add/init_directories.js /Users/Me/Source/Repos/mobile-app
    Adding ios project...
    iOS project created with cordova-ios@3.9.1
    TypeError: Cannot read property 'split' of undefined
        at default_CFBundleVersion (/usr/local/lib/node_modules/cordova/node_modules/cordova-lib/src/cordova/metadata/ios_parser.js:306:19)
        at ios_parser.update_from_config (/usr/local/lib/node_modules/cordova/node_modules/cordova-lib/src/cordova/metadata/ios_parser.js:79:59)
        at ios_parser.update_project (/usr/local/lib/node_modules/cordova/node_modules/cordova-lib/src/cordova/metadata/ios_parser.js:264:17)
        at /usr/local/lib/node_modules/cordova/node_modules/cordova-lib/src/cordova/prepare.js:138:31
        at _fulfilled (/usr/local/lib/node_modules/cordova/node_modules/q/q.js:787:54)
        at self.promiseDispatch.done (/usr/local/lib/node_modules/cordova/node_modules/q/q.js:816:30)
        at Promise.promise.promiseDispatch (/usr/local/lib/node_modules/cordova/node_modules/q/q.js:749:13)
        at /usr/local/lib/node_modules/cordova/node_modules/q/q.js:509:49
        at flush (/usr/local/lib/node_modules/cordova/node_modules/q/q.js:108:17)
        at doNTCallback0 (node.js:417:9)

我在其旁边的目录中有另一个ionic / cordova应用程序可以正常工作,所以我不认为它与我的环境有任何关系。

我已经多次卸载并重新安装了node和npm。从我的mac和项目中删除node_modules并得到相同的结果。

这让我疯了。

1 个答案:

答案 0 :(得分:0)

我今天遇到了同样的问题,并将问题追踪到一个钩子。我想你的"无法读取属性'分裂'未定义"错误可能是由项目中的不同内容引起的,但也许以下内容可以帮助其他人。

当我跟踪Cordova recommendation并将Cordova Patch Platform hookhooks/after_prepare中的简单文件加载到<hook>中的自定义config.xml标记时,它开始失败1}}。