我asked this question on the android-developers group但没有得到任何回应,所以我想我会在这里尝试。
ADT eclipse插件似乎对如何构建Android项目有一个非常严格的想法 - 每http://developer.android.com/guide/developing/eclipse-adt.html,它需要在项目的根级别拥有AndroidManifest.xml
文件,以及顶级res
,assets
,gen
和src
个文件夹,依此类推。
我想知道是否可以通过它识别的布局使插件更灵活一些。特别是,我一直在为(基于scala的)simple-build-tool使用构建插件,它希望项目以类似Maven的方式布局,如下所示:
src/
main/
AndroidManifest.xml
assets/
res/
scala/
java/
test/
resources
<files to include in test jar here>
scala/
<test Scala sources>
java/
<test Java sources>
这是我习惯于基于maven的java开发的布局。但是,当我在ADT中加载类似的项目时,我收到很多关于缺少AndroidManifest.xml
,缺少res
目录等的投诉。这些东西都存在,它们不是ADT所期望的那样。
我不一定需要使用ADT来构建我的项目,但我想使用它(和Eclipse)进行编辑。任何人都可以告诉我是否可以在用于查找各种与Android相关的资源的目录中使其更灵活?
另外,有人能告诉我ADT插件是否是开源的?我似乎无法在任何地方找到其源代码的链接。
(作为一个注释,我也一直在试图以{AD}喜欢的方式与sbt
争吵,这可能是可能的,但看起来非常繁琐。)
答案 0 :(得分:1)
对于r3 0.94,这是where you can find the ADT source,找不到最新的
答案 1 :(得分:1)
我不相信你可以改变Android项目结构并让ADT理解它。即使使用基于Ant的命令行构建,这样做也会“非常繁琐” - 您必须自己制作各种Android Ant任务的副本,修改它们以适应(并希望底层构建工具允许)你想要什么,然后面对Android SDK更新,永远保持它们。
如果您认为main/
是Android项目,那么您的结构实际上非常接近Android预期。如果您可以说服sbt
允许src/
而不是java/
,那么sbt
不会抱怨生成的bin/
和gen/
1}}在编译之后,您可以使用它。
答案 2 :(得分:1)
据我所知,ADT需要这些文件夹名称,但有一种解决方法:您可以在Eclipse中创建“链接文件夹”。这些类似于Unix中的符号链接,但存储在Eclipse .project文件而不是文件系统中,因此它们仅对Eclipse可见。
您可以通过在Eclipse中右键单击项目的根目录,然后选择“创建新文件夹”来创建一个。单击“高级”,然后选择创建链接文件夹的选项。然后输入您希望链接到的位置。您可以在开头使用PROJECT_LOC指定项目目录,因此对于您的示例,您可以键入PROJECT_LOC / src / main / res作为要链接的文件夹,并使用自动生成的名称“res”作为创建的文件夹。 / p>