首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >无法从cordova cli构建iOS项目

无法从cordova cli构建iOS项目
EN

Stack Overflow用户
提问于 2018-04-09 03:34:20
回答 2查看 0关注 0票数 0

我已经使用Cordova CLI 3.5.0版创建了一个项目。

我已经使用CLI成功部署了Android平台项目。

代码语言:javascript
复制
cordova run android

但是,我有问题为iOS部署项目。

代码语言:javascript
复制
cordova run ios

我遇到了这个错误:

代码语言:javascript
复制
mv:dest文件已存在:/Users/amirfazwan/Documents/workspace/MyPKS/platforms/ios/MYPKS/MyPKS-Info.plist

mv:dest文件已存在:/Users/amirfazwan/Documents/workspace/MyPKS/platforms/ios/MYPKS/MyPKS-Prefix.pch

shell.js:内部错误
错误:EINVAL,无效参数'/Users/amirfazwan/Documents/workspace/MyPKS/platforms/ios/MYPKS.xcodeproj'
    在Object.fs.renameSync(fs.js:543:18)
    at /usr/local/lib/node_modules/cordova/node_modules/cordova-lib/node_modules/shelljs/shell.js:495:8
    在Array.forEach(native)
    在Object._mv(/usr/local/lib/node_modules/cordova/node_modules/cordova-lib/node_modules/shelljs/shell.js:471:11)
    在Object.mv(/usr/local/lib/node_modules/cordova/node_modules/cordova-lib/node_modules/shelljs/shell.js:1491:23)
    在pbxProject。(/usr/local/lib/node_modules/cordova/node_modules/cordova-lib/src/cordova/metadata/ios_parser.js:126:27)
    在pbxProject.EventEmitter.emit(events.js:98:17)
    在pbxProject。(/usr/local/lib/node_modules/cordova/node_modules/cordova-lib/node_modules/xcode/lib/pbxProject.js:30:18)
    在ChildProcess.EventEmitter.emit(events.js:98:17)
    在handleMessage(child_process.js:322:10)

只有在我手动访问Xcode项目以添加图标和闪屏后,才会出现此问题,因为即使在config.xml中声明了图标和闪屏也不会自动添加到项目中。

我试图删除Info.plist&Prefix.pch文件,但出现此错误。

代码语言:javascript
复制
错误:ENOENT,没有这样的文件或目录'/Users/amirfazwan/Documents/workspace/MyPKS/platforms/ios/MYPKS/MYPKS-Info.plist'
    在Object.fs.openSync(fs.js:427:18)
    在Object.fs.readFileSync(fs.js:284:15)
    在Object.exports.parseFileSync(/usr/local/lib/node_modules/cordova/node_modules/cordova-lib/node_modules/plist-with-patches/lib/plist.js:18:19)
    在Object.module.exports.update_from_config(/usr/local/lib/node_modules/cordova/node_modules/cordova-lib/src/cordova/metadata/ios_parser.js:66:31)
    在Object.module.exports.update_project(/usr/local/lib/node_modules/cordova/node_modules/cordova-lib/src/cordova/metadata/ios_parser.js:189:21)
    at /usr/local/lib/node_modules/cordova/node_modules/cordova-lib/src/cordova/prepare.js:113:31
    在_fulfilled(/usr/local/lib/node_modules/cordova/node_modules/q/q.js:798:54)
    self.promiseDispatch.done(/usr/local/lib/node_modules/cordova/node_modules/q/q.js:827:30)
    在Promise.promise.promiseDispatch(/usr/local/lib/node_modules/cordova/node_modules/q/q.js:760:13)

如果从Xcode启动,该项目工作得很好,但我不再可以从CLI构建项目或从CLI启动“serve”命令以进行调试。

请指导我,谢谢。

解决了

通过使用Xcode重命名项目名称解决。谢谢杰森的提示。

WWWWW
WWWWW
EN

回答 2

Stack Overflow用户

发布于 2018-04-09 12:25:14

我发生的事情是将项目名称重命名为首都。这对科尔多瓦造成各种混乱。

我做的第一件事是重新命名有问题的plist和pch文件以匹配正确的大写字母。所以,就你的情况而言,如果它是myPKS,但现在是MyPKS,则需要将这些文件重命名为MyPKS-Info.plist和MyPKS-Prefix.pch。

然后我必须重命名.xcodproj以匹配大小写。

之后,又发生了另一个问题:xcodebuild:error:项目'NewName.xcodeproj'不包含名为'NewName'的目标。

为了解决这个问题,我必须将目标重命名为具有适当的大写字母。由于我是iOS开发新手,我不知道如何描述如何到达那里。我终于绊倒了它,做了改变,并且它工作了!

票数 0
EN

Stack Overflow用户

发布于 2018-04-09 12:47:02

只需删除平台,然后再添加它们。

代码语言:javascript
复制
cordova platform rm ios
cordova platform rm android
cordova platform add ios
cordova platform add android
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/-100008011

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档