【问题标题】:Android Eclipse - How to share an assets folder?Android Eclipse - 如何共享资产文件夹?
【发布时间】:2014-03-06 12:10:20
【问题描述】:

我在 Eclipse / ADT 中构建了许多不同的 Android 应用程序,它们共享通用代码和资产。共享公共源代码文件夹很容易,因为我可以在构建路径设置中使用Link Source。这很好用。

这些程序还共享 assets 文件夹中的内容。目前我正在复制,这有点不雅且容易出错。

告诉 Eclipse / ADT 使用公共资产文件夹是否可以很简单,就像让它共享一个源代码文件夹很简单一样?我找不到任何类似的选项或工具。


注意事项:

  • 不是在寻找“图书馆”解决方案(确实如此 无论如何都充满了问题,我之前确实尝试过并点击了 诸如this 之类的问题)。在任何情况下,与 资产,我正在寻找简单

  • 共享资产文件夹是否必须包含 所有应用程序需求的超集。

  • 资产。不是“资源”。

  • 我使用的是 ADT 版本 22.2

  • 由于许多复杂的原因,以符号方式链接文件夹是不够的。 (你确实想知道细节。无论如何你永远不会相信他们。)

【问题讨论】:

  • @CommonsWare 谢谢。公平的电话,但有许多复杂的原因导致这不起作用。 (将添加到注释中)。
  • 好的。您愿意使用 Gradle 而不是 Eclipse 进行构建吗?
  • @CommonsWare 否,但为了其他现在或将来遇到此问题的人的利益,无论如何都值得在此基础上提供答案。

标签: android eclipse adt


【解决方案1】:

共享通用源代码文件夹很容易,因为我可以在构建路径设置中使用链接源

我不会指望长期工作。

目前我正在复制,这有点不雅且容易出错。

唉,鉴于您的其他限制,我怀疑这是您唯一的选择,尽管您可以采取一些措施来减少容易出错的方面(例如,同步内容的脚本)。

从长远来看,适用于 Android 的 Gradle 将成为所有构建(包括 Eclipse)的唯一真正答案。那时,我希望您的“链接源”会中断。但是,到那时,您应该能够切换到 Gradle 进行构建。

Gradle 允许开发人员覆盖各种目录的默认位置,包括资产目录。您应该能够设置一个 build.gradle 文件,该文件指向资产目录的某个公共位置,覆盖项目内部的默认位置。

不清楚为什么您认为符号链接/硬链接不能作为权宜之计。您可能希望考虑提出一个单独的 StackOverflow 问题,解释您尝试过的方法以及使用该技术遇到的问题,无论您是否认为我们会相信它们。

请记住,虽然 Eclipse 处理了 Android 构建的 javac 步骤,但其他所有内容主要由外部工具处理(例如,aapt)。那些将忘记仅存在于 Eclipse 领域的事物。相反,这就是符号链接/硬链接应该起作用的原因,因为从这些工具的角度来看,这些项目应该被视为与文件系统中的实际文件相同。因此,“链接源”工作的原因并不是因为 Android 真的支持它,而是 Android 目前将构建的一部分委托给 Eclipse 本身。一旦 Google 为 Eclipse 添加了 Gradle for Android 支持(我希望在 2014 年底之前),那么我预计 Eclipse 将完全退出构建过程,并且我预计“链接源”在那时会失败。

【讨论】:

  • +1 特别是链接源可能会意外失败的信息(就像 Eclipse 本身大部分时间......)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多