Cordova,错误:安装插件时似乎不是 xcode 项目(没有 xcode 项目文件)

Posted

技术标签:

【中文标题】Cordova,错误:安装插件时似乎不是 xcode 项目(没有 xcode 项目文件)【英文标题】:Cordova, Error: does not appear to be an xcode project (no xcode project file) when installing plugins 【发布时间】:2014-01-20 23:29:34 【问题描述】:

我正在按照文档尝试为 ios 创建一个 Cordova 应用程序。我在 OSX Maverick 上使用 3.3 版,这就是我所做的:

cordova create hello com.example.hello HelloWorld
cd hello
cordova platform add ios
cordova plugin add org.apache.cordova.device

此时,cordova 抱怨缺少 xcode 项目:

Fetching plugin from "org.apache.cordova.device"...
Starting installation of "org.apache.cordova.device" for ios

/usr/local/lib/node_modules/cordova/node_modules/q/q.js:126
                    throw e;
                          ^
Error: does not appear to be an xcode project (no xcode project file)
    at Object.module.exports.parseProjectFile (/usr/local/lib/node_modules/cordova/node_modules/plugman/src/platforms/ios.js:143:19)
    at Object.ActionStack.process (/usr/local/lib/node_modules/cordova/node_modules/plugman/src/util/action-stack.js:34:49)
    at handleInstall (/usr/local/lib/node_modules/cordova/node_modules/plugman/src/install.js:380:20)
    at /usr/local/lib/node_modules/cordova/node_modules/plugman/src/install.js:331:20
    at _fulfilled (/usr/local/lib/node_modules/cordova/node_modules/q/q.js:798:54)
    at self.promiseDispatch.done (/usr/local/lib/node_modules/cordova/node_modules/q/q.js:827:30)
    at Promise.promise.promiseDispatch (/usr/local/lib/node_modules/cordova/node_modules/q/q.js:760:13)
    at /usr/local/lib/node_modules/cordova/node_modules/q/q.js:574:44
    at flush (/usr/local/lib/node_modules/cordova/node_modules/q/q.js:108:17)
    at process._tickCallback (node.js:415:13)

我想知道我做错了什么以及如何解决这个问题?

【问题讨论】:

我认为 cordova 抱怨插件中不存在 xcode 项目,因为它确实存在于 platforms/ios。但是这些插件不应该有 xcode 项目。 【参考方案1】:

我想通了。路径中有特殊字符([]),可能导致nodejs中文件搜索出现问题。当文件夹移动到没有此类字符的位置时,错误消失了。

【讨论】:

以上是关于Cordova,错误:安装插件时似乎不是 xcode 项目(没有 xcode 项目文件)的主要内容,如果未能解决你的问题,请参考以下文章

Cordova 插件手动安装

如何使用sdk创建cordova插件

安装 fcm 插件时出现cordova错误

检测 Cordova 插件是不是存在

添加 SMS 插件 Ionic 时类型错误对象不是函数

Cordova“无法获取插件”错误