Séb*_*ien 12 java eclipse android
我正在使用Eclipse开发Android棋盘游戏.我在Android项目中开发了UI.
另一方面,我在常规Java项目中开发了AI,因为我希望能够在没有Android模拟器的所有约束的情况下测试它(我没有找到使用我的Windows JVM运行代码的任何其他方法).
现在,我希望"加入"两个项目(独立工作正常),即使用UI中的AI Java类.
这是我尝试过的:
在我的Android项目Properties > Projects References中,我勾选了Java项目.这允许我构建没有错误的Android项目(实例化AI对象).
但它在运行时因此错误而失败:
Could not find class 'my.package.AI', referenced from method my.otherpackage.UI.onStart
Run Code Online (Sandbox Code Playgroud)
将AI Java项目纳入我的Android项目的正确方法是什么?
(注意:我仍然希望能够开发和测试AI作为常规Java应用程序,因此我认为使用jar或将所有源代码复制到Android项目将不适合我的需求)
编辑:
我希望新的ADT v17可以解决问题,但事实并非如此.我几乎尝试了所有可用的选项,在我的Android项目中包含一个项目:
允许编译和运行而没有错误的唯一方法是将Java项目的JAR添加到Android项目构建路径.
yor*_*rkw 10
Projects References仅将依赖项目源代码(您的AI项目)添加为软(可能是一个更准确的单词)参考,您的AI项目不会添加到您的Android项目构建路径中.因此,当Eclipse构建您的应用程序时,实际的ai.jar不会导出到最终的apk中.
您应该将AI项目添加到Android项目构建路径中:
第2步可能是可选的,这应该在Android项目中添加AI项目作为参考,并在Eclipse构建Android项目时将ai.jar导出到final.apk.
ADT 17.0.0更新:
Android Dev Team刚刚发布了带有ADT 17.0.0的SDK r17,它声称现在可以正确处理这些用例:
Eclipse特定的更改
名为"Library Projects"的动态类路径容器已重命名为"Android Dependencies",因为它现在不仅包含Library Projects.
现在,容器也将填充由Library Projects引用的仅Java项目.如果这些Java项目也引用其他Java项目和/或jar文件,它们将自动添加(也支持通过用户库引用的jar文件).
重要说明:仅当引用设置为在引用项目中导出时才会发生这种情况.请注意,将项目或jar文件添加到项目构建路径时,这不是默认设置.始终导出库项目(及其libs/*.jar文件的内容).此更改仅影响仅Java项目及其自己的jar文件.
同样,检测并删除重复项(项目和jar文件).
更多链接.
Nic*_*tch -1
不要将其添加到项目引用区域,而是进入 Android 窗格(在“项目属性”中),向下滚动到底部,然后将其添加到“库”下。
这有时有效,但有时会产生奇怪的 Eclipse 问题(不知道为什么),在这种情况下,将 jar 直接复制到项目中似乎效果最好。
归档时间: |
|
查看次数: |
9264 次 |
最近记录: |