java Xcode 4.5.1:链接器错误:NSJavaVirtualMachine,未找到架构i386的符号
我试图从objective C、iPhone 5应用程序中调用Java类。我使用的是Xcode 4.5.1。在这个阶段,我甚至无法加载虚拟机,除非出现以下错误:
架构i386的未定义符号:
“_OBJC_CLASS_$_NSJavaVirtualMachine”,引用自: 主目录中的objc类参考。o ld:未找到架构i386的符号 叮当声:错误:链接器命令失败,退出代码为1(使用-v查看调用)
以下是我遵循的步骤
1)基本上。m:
@autoreleasepool {
[NSJavaVirtualMachine defaultVirtualMachine]; //Added this line to load the Java VM.
id vector=[[NSClassFromString(@"java.util.Vector") alloc] init];
[vector add:@"one item!"];
NSLog(@"item 1=%@",[vector get:0]);
return 0;
}
2)我添加了JavaVM。框架由: (右键单击)框架->;“将文件添加到项目”->;JavaVM。框架->;(将项目复制到目标组的文件夹中,并创建文件夹引用…->;单击添加。)
(它也出现在构建阶段->;将二进制文件链接到库中)
3)在信息中。plist中添加了以下属性:
Cocoa Java Application = Yes
Java类路径和Java根目录
它们都被设置为全局目录,我在其中存储Java文件
我试图调用Java类Vector
的add and get函数。但我似乎根本无法将虚拟机加载到Xcode中!
请帮忙
# 1 楼答案
你不能在iOS上使用NSJavaVirtualMachine。Cocoa/Java绑定仅在OS X上可用,即使在那里,它们也被弃用