【发布时间】:2014-06-19 09:37:38
【问题描述】:
我正在使用 C#(Unity) 在 jar 中调用 java 函数。我的课是这样的:
Class A{
auth(){
}
share(){
StatusesAPI mStatusesAPI;
mStatusesAPI.upload("hey", bitmap, null, null, mListener);
........
}
}
。 auth() 可以在 c# 中调用,并且如果我评论与 StatusesAPI 相关的所有内容,例如,
//private StatusesAPI mStatusesAPI;
//mStatusesAPI.upload("hey", bitmap, null, null, mListener);
现在,因为我需要这个类(StatusesAPI) 来做某事,所以我必须取消它的注释然后导入它。这个类在项目 B 中,它依赖于项目 B 中的其他类。所以我在 Eclipse JAVA BUILD PATH 中添加了项目 B。没有编译错误。我进入
jar -cvf plugin.jar *
在 myproject/bin/class 文件夹下的 cmd 中
然后我将 plugin.jar 移动到 unity /bin 文件夹。 但是当c#调用auth()时,就会出错。
我怀疑 StatusesAPI 代码没有包含在我的 plugin.jar 中,这使得 A 类的所有功能都不起作用。我已经测试在 plugin.jar 中调用我的其他类函数,它们可以工作。
有人知道如何处理吗?如何使 auth() 和 share() 都有效。
【问题讨论】:
-
您必须将另一个项目打包到您的 jar 中。 eclipse 导出向导有这方面的选项。
-
@Dawnkeeper 我已经尝试导出->选择jar文件->勾选我的项目和项目B,勾选导出生成的类文件和资源,勾选导出java源文件和资源,勾选压缩jar的内容文件。按完成。我有一个罐子,但它仍然不起作用。
标签: java android eclipse jar unity3d