2012-02-15 119 views
6

有什么方法可以排除Android构建器处理/ res文件夹下的某些文件?如何排除Android Eclipse项目的“/ res”文件夹中的文件

我有几个Android项目,我使用Eclipse构建。我将这些项目上传到我们的版本控制系统中。问题是,版本控制将一些“project.pj”文件添加到每个文件夹。

由于这些project.pj文件,我的项目不会在Eclipse中生成。我收到错误,因为构建器尝试在/ res下处理这些文件。我知道我可以将这些文件排除在/ src和/ gen文件夹中,但是如何将它们排除在/ res(和/ assets)文件夹中?

回答

2

aapt是处理res /下的文件的程序。没有办法告诉它忽略某些文件。所以,简短的回答:你不能。您的VCS不适合Android项目。你听说过Git吗?

也就是说,您的构建系统可以扩展以移除这些不需要的文件,运行aapt,然后将它们右移。在使用Eclipse时,完成这个操作意味着要黑客使用Android插件来添加这些附加步骤。或者编写自己的插件,执行这些步骤围绕对Android插件的调用 - 我从来没有在Eclipse上自己砍过,也不想。要想有任何其他的构建系统(例如使用maven,ant或make,或者脚本),这与理解系统如何做任何事情一样简单。 Eclipse只是way more involved。作为最后的选择,您可以在项目目录中编写自己的脚本来移动这些.pj文件,并在适当的时候自行运行这些脚本,而无需从Eclipse获得任何帮助。

+0

谢谢澄清! 我同意我公司的版本控制不适合Android项目。不幸的是,我无法告诉我的公司只能为我的项目切换到GIT。 = p 我想我会用我自己的Ant构建脚本来构建我的应用程序。 再次感谢! – rainai 2012-02-15 10:24:06

+4

@rainai,我刚刚注意到这个:'aapt'跳过以点(“。”)开头的文件,这些文件被一些Unix命令隐藏。因此,您可以临时将“project.pj”文件重命名为“.project.pj”,这更容易。 – 2012-02-16 00:11:14

+0

@rainai,同样,虽然我感谢您的谢意,请[接受我的回答](http://meta.stackexchange.com/questions/5234/how-does-accepting-an-answer-work)。 – 2012-02-16 00:11:53

0

使用ant来控制构建,编译过程。

+0

感谢您的建议。我将尝试为此创建自己的Ant构建脚本。 – rainai 2012-02-15 10:27:43

6

如果以句点(.)为前缀加任何文件名,它将隐藏在Eclipse中并且不包含在构建中。

如果您在运行Windows的计算机上,您仍然可以在资源管理器中毫无问题地看到它们。如果您使用的是Mac,则需要确保隐藏的文件正在显示,如果您想再次找到该文件。

3

实际上,有几种方法可以让aapt忽略这些资源。

其中一种方式是使用--ignore-assets到命令行调用,如果您可以影响(可能在build.xml中使用)。

你也可以在你的ant.properties中使用aapt.ignore.assets=,如果你有的话。

相关问题