我花了一些时间创建了两个虚拟项目(一个
Android和一个Java),并与之配合使用,最后提出一个不经常使用但能够解决您的需求的解决方法.
首先,我会更多地解释你的问题(基于我的理解和我所尝试的),以便其他人能够更清楚地了解这里发生了什么.
根据评论中的对话:
could you tell me what you have in following setting: project->properties->Builder ? – Sudar Nimalan
@SudarNimalan: I am not sure this is what you are asking,but: there’s text that says “Configure the builders for this project”,and under it is a single option,“Java builder”,which is selected (checked). – shino
for android project,there should be,“Android Resource Manager”,“Android Pre Compiler”,“Java Builder”,“Android Package Builder” in this order,chould you add those and try? – Sudar Nimalan
@SudarNimalan: I owe you an apology; I do have those four components. My “project” is split into 4 projects – “core”,“core-android”,“core-desktop”,and “core-html”. It’s a little weird because I set it up with the libGDX project setup UI,and I was looking at the ‘core’ project when I answered your question. My ‘core-android’ project has all four (in that order),and it is the one that has the problem in my question. – shino
场景:
你有4个项目:
> core:一个常规的java项目(这里常用的纯java代码)@H_301_25@> core-android:一个Android应用程序项目.@H_301_25@core-desktop:与问题无关,所以忽略.@H_301_25@> core-html:与问题无关,因此被忽略.
core-android项目依赖于核心项目,通过将核心添加到core-android的构建路径(Properties – > Java Build Path – > Projects – > Add …)和导出列表(Properties – > Java Build路径 – >订单和导出).
问题(不真实):
更改核心中的一些代码并保存它,运行core-android,eclipse安装最后编译的apk,而不是新的更改.
原因:
这是预期的行为,你在core-android中引用核心项目的方式只会在核心和核心android之间创建一个薄弱的链接(或某种东西),核心-ororid的自动构建脚本不会发现任何更改以核心制成.您必须清理项目(只需要干净的core-android项目),以便Eclipse可以删除现有的apk(在bin目录下)并重新生成apk(最新的代码从核心更改).
请参阅下面的Xav的评论,Android SDK工具应该意识到在项目构建路径下的普通Java项目的更改,并且此时不会正常处理此功能.
请注意,如果核心是Android图书馆项目,那么没有问题,您的核心 – android项目将意识到核心项目(java代码,Android资源等)中的任何更改,如果核心仅用于核心android,这可能也是一种解决方法:将Java项目核心转化为Android库项目.
解决方法(Eclipse Link Source):
在项目之间增加软链接有另一种方式(不常用):
>首先,您需要从core-android的构建路径中删除核心项目,这也将从“导出和订单”列表中删除它.@H_301_25@右键点击core-android,选择Build Path – >链接源…将../core/src添加为链接文件夹位置,将src-lib1添加为文件夹名称,最后查看屏幕.
这个在包资源管理器窗口中的core-android下创建一个符号链接src-lib1指向核心的src foder,在文件系统中,您仍然有两个单独的项目文件夹.现在,如果你改变一些核心代码并运行core-android,Eclipse将构建和安装最新的apk.没有必要清理core-android项目.
链接源窗口:
最终看看包资源管理器:
您应该始终把正常的方法视为第一选择,毕竟,与上述不寻常的方法相比,人工清洁项目并不是一件大事.