带有xcode 5.1的cordova 3.4不会使用最新的文件传输插件构建

Ger*_*ler 9 xcode ios cordova

我将我的cordova应用程序更新为3.4.0-0.1.3.我有xcode 5.1.在我的应用程序中,我使用插件的早午餐和/添加所有这些.cordova plugins list报告以下内容:

[ 'com.phonegap.plugins.PushPlugin',
  'org.apache.cordova.camera',
  'org.apache.cordova.console',
  'org.apache.cordova.device',
  'org.apache.cordova.dialogs',
  'org.apache.cordova.file',
  'org.apache.cordova.file-transfer',
  'org.apache.cordova.geolocation',
  'org.apache.cordova.globalization' ]
Run Code Online (Sandbox Code Playgroud)

之后我尝试构建xcode并出现了很多错误(47),但我做了我的作业,发现了许多有用的答案,如http://shazronatadobe.wordpress.com/2014/03/12/xcode- 5-1-and-cordova-ios /帮助我将问题减少到2.以下是命令行中的错误消息,因为我不允许(现在)发布屏幕截图.它们与xcode中的非常相似:

Undefined symbols for architecture i386:
  "_OBJC_CLASS_$_CDVFilesystemURL", referenced from:
      objc-class-ref in CDVFileTransfer.o
ld: symbol(s) not found for architecture i386
clang: error: linker command failed with exit code 1 (use -v to see invocation)

** BUILD FAILED **


The following build commands failed:
  Ld build/emulator/Appname.app/Appname normal i386
(1 failure)
Error: /Users/username/Documents/cordova/appname/platforms/ios/cordova/build: Command failed with exit code 65
    at ChildProcess.whenDone (/usr/local/lib/node_modules/cordova/src/superspawn.js:112:23)
    at ChildProcess.EventEmitter.emit (events.js:98:17)
    at maybeClose (child_process.js:735:16)
    at Process.ChildProcess._handle.onexit (child_process.js:802:5)
Run Code Online (Sandbox Code Playgroud)

因为错误消息引用了CDVFileTransfer.o,所以我尝试再次卸载File-Transfer Pluging build.现在我得到了这个可爱的** BUILD SUCCEEDED **消息.重新安装插件后,构建再次失败.

我做了很多研究,但没有找到任何相关的,除了以下,但我不确定这是否会导致问题:https://issues.apache.org/jira/browse/CB-6212任何人都可以确认?

是否有人使用新的xcode(5.1)和文件传输插件(0.4.2)运行最新的cordova(3.4.0-0.1.3)?

非常感谢!

小智 11

我有同样的错误.我通过检查xcode编译的文件解决了这个问题.就我而言,CDVFile.m不在列表中.

我邀请您验证插件*.m文件是否已添加到编译文件列表中.

  • 在"构建阶段>编译源代码"中,CDVFileTransfer.m存在,但缺少CDVFile.m.我将它添加到CDVFileTransfer.m正上方的列表中,它将错误从2增加到4,但错误消息建议我也添加CDVAssetLibraryFilesystem.m和CDVLocalFilesystem.m也丢失了.现在我的构建再次工作!非常感谢你!!! (9认同)