“Project-> Android工具 - >修复项目属性”Eclipse命令exaclty做了什么?
我已经阅读了很多次使用它,主要是在与Eclipse中的Android R生成问题相关的答案中,但对我来说它就像魔术一样,我按下它并且我认为它修复了一些项目属性,但没有任何反应..没有视觉反馈,没有关于修复了哪些项目属性的信息......任何人都可以对它究竟做了什么有所了解?
THX
答案 0 :(得分:27)
通过查看ADT源代码,特别是FixProjectAction并阅读源代码和评论,我们可以看到它调用:
ProjectHelper.fixProject(project);
ProjectHelper.fixProjectNatureOrder(project);
AndroidNature.configureResourceManagerBuilder(project);
AndroidNature.configurePreBuilder(project);
AndroidNature.configureApkBuilder(project);
ProjectHelper.fixProject(project):
ProjectHelper.fixProjectNatureOrder(project)重新排序项目性质,因此Android项目性质是第一位的。
AndroidNature.configureResourceManagerBuilder(project)添加了ResourceManagerBuilder,如果它还没有。它会将自己插入第一个构建器。
AndroidNature.configurePreBuilder(project)添加了PreCompilerBuilder,如果它还没有。它将检查ResourceManager的存在并立即插入。
AndroidNature.configureApkBuilder(project)在最后添加.apk构建器,如果它还没有。
最后三次调用可确保您的项目具有正确的构建器。当您在eclipse项目属性中查看Builders部分时,您将看到:
答案 1 :(得分:1)
在项目上运行“修复项目属性”的另一个结果是,在同一工作区中将项目作为Android库引用的任何其他项目可能具有在项目构建路径上的“Android依赖项”下链接的jar。
这可能导致对同一个jar文件或缺少jar文件引用的多次引用。
修复方法是从相关项目中删除这些链接,删除“Android Dependency”并重新运行“Fix Project Properties”。