1

在 android-developers 组上问了这个问题,但没有得到任何回应,所以我想我会在这里尝试。

ADT eclipse 插件似乎对如何构建 Android 项目有一个非常严格的想法 - 根据http://developer.android.com/guide/developing/eclipse-adt.html,它需要将AndroidManifest.xml文件放在根目录下项目的层级,加上resassetsgensrc顶层的文件夹,依此类推。

我想知道是否有可能让插件对其识别的布局更加灵活。特别是,我一直在为(基于 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>

(请参阅simple-build-tool 文档)。

这是我习惯于基于 maven 的 java 开发的布局。但是,当我在 ADT 中加载类似的项目时,我收到了很多关于缺失AndroidManifest.xml、缺失res目录等的投诉。这些东西都存在,只是不是 ADT 所期望的。

我不一定需要使用 ADT 来构建我的项目,但我想使用它(和 Eclipse)进行编辑。谁能告诉我是否可以在用于查找各种 Android 相关资源的目录中使其更加灵活?

另外,谁能告诉我 ADT 插件是否是开源的?我似乎无法在任何地方找到指向其源代码的链接。

(作为说明,我也一直在努力争取以sbtADT 喜欢的方式做事,这可能是可行的,但看起来很乏味。)

4

3 回答 3

1

据我所知,ADT 需要这些文件夹名称,但有一个解决方法:您可以在 Eclipse 中创建“链接文件夹”。这些类似于 Unix 中的符号链接,但存储在 Eclipse .project 文件而不是文件系统中,因此它们仅对 Eclipse 可见。

您可以通过在 Eclipse 中右键单击项目的根目录,然后选择“创建新文件夹”来创建一个。单击“高级”并选择创建链接文件夹的选项。然后输入您希望它链接到的位置。您可以在开始时使用 PROJECT_LOC 来指定项目目录,因此对于您的示例,您将键入 PROJECT_LOC/src/main/res 作为要链接到的文件夹,并为创建的文件夹使用自动生成的名称“res”。

于 2011-09-03T02:52:03.540 回答
1

这是您可以找到r3 0.94 的 ADT 源的地方,但找不到最新的

于 2009-12-24T19:51:48.723 回答
1

我不相信您可以更改 Android 项目结构并让 ADT 理解它。即使使用基于 Ant 的命令行构建,这样做也会“非常乏味”——您必须自己制作各种 Android Ant 任务的副本,修改它们以适应(并希望底层构建工具允许你想要什么),然后在面对 Android SDK 更新时永远维护它们。

main/如果您认为是 Android 项目,那么您的结构实际上非常接近 Android 的预期。如果你可以说服sbt允许src/而不是在java/那里,并且如果sbt不会抱怨结果bin/并且gen/你会在main/编译后结束,你可能会让它工作。

于 2009-12-24T20:14:27.290 回答