如果我在Android库项目中进行更改,则必须手动刷新,有时还会清除使用该库的所有项目。这是正常的吗?有办法解决这个问题吗?
答案 0 :(得分:3)
我找到了解决此问题的方法。基本思想是使用自定义ant构建器,因为它能够在干净,手动构建或自动构建时刷新任何特定资源或整个工作区。
以下是步骤:
1)使用一个空的存根目标创建一个简单的ant文件:
<?xml version="1.0" encoding="UTF-8"?>
<project name="android" >
<target name="refresh" />
</project>
2)将其命名为“lib-refresher.xml”并将其放入应用程序的.project文件所在的文件夹中。
3)现在去eclipse,找到使用android库的项目(不是库项目本身)。
4)对于这个项目,请转到:项目 - &gt;属性 - &gt;助洗剂
5)创建新构建器,选择Ant任务,选择指定的“lib-refresher.xml”,选择构建基础文件夹。
6) 重要 - ant构建器任务的“刷新”选项卡选择“特定资源”并选择与库相关的项目。
7) 重要 - 在目标标签上选择构建变体的“刷新”目标:清洁,手动构建,自动构建。
8) 重要 - 保存更改,将新的自定义ant构建器移动到构建器堆栈的顶部。
现在整个项目将在构建和午餐应用程序之前刷新。这将包括对库项目对应用程序项目所做的所有更改。这就是所需要的。
(这可以通过相反的方式完成:每当启动autobuild时,库项目都可以刷新整个工作区。这可能有点矫枉过正,但可能会解决一些更难的情况)。
答案 1 :(得分:1)
我在工作区(Android库和Android应用程序)中有展位项目,当我在库中进行任何更改时,我必须使用应用程序刷新项目,但这解决了我的问题:
(Application) project properties -> Java Build Path -> Tab Projects
然后我添加了我的android库。
答案 2 :(得分:0)
这是事实。如果您的lib构建了一个jar,那么您需要刷新一个jar项(您也可以右键单击并刷新外部jar参考以节省时间)。
答案 3 :(得分:0)
几周前我也遇到过同样的问题。我没有找到我想要的解决方案,即直接在库项目中修改源代码并且依赖项目会自动刷新,但我确实找到了比不断刷新和清理的混乱更好的东西。
我能找到的最好的方法是使用正在处理的依赖项目中的链接库文件夹,这样项目就可以看到更改。当跳转到另一个依赖项目时,您仍然需要刷新在另一个项目中更改的文件(通常只是src文件夹)。如果要进行直接更改,可能还需要刷新库项目。这可能听起来不像是一个帮助,但如果你在一个依赖的项目中花费大量的时间(就像我迄今为止的情况一样),它确实有帮助。