【发布时间】:2015-08-07 07:04:01
【问题描述】:
我有一个不是库项目的 Android 项目 A。我有另一个Android Project Main,其中引用了项目A(通过:项目属性-> Java构建路径->项目选项卡->添加)。所以我可以从主项目访问项目 A 的所有类(片段、活动)。但是,在运行 Main 项目时,它会引发 java.lang.noclassdeffounderror 的运行时异常。有什么办法可以在不将项目 A 设为库项目的情况下解决问题。
我在我的两个项目中都使用roboguice。因此,如果我将项目 A 作为库,则在项目 A 中的 R.java 文件中创建的所有资源都将变为非最终的,它们将不再是常量。此外,我在两个项目中都使用了Roboguice。因此,在这种情况下,声明@InjectView(R.id.view_di) 会产生编译错误,因为它需要常量。最重要的是,我们有一个注解接口,它在每个片段中设置标题名称和标题背景,它只接受常量作为参数。
【问题讨论】:
-
如果你把它作为图书馆项目链接会有什么问题?
-
显示一些可以展示您的工作的代码或快照。
-
正如@MurtazaKhursheedHussain 指出的那样,如果你想使用 A 作为 B 的参考,你应该使用 A 作为库。
-
没错,Eclipse 不能那样工作。甚至 Gradle 也不提供此功能。
-
我在两个项目中都使用了 roboguice。所以如果我将项目 A 作为库,项目 A 中的 R.java 文件中创建的所有资源都将成为非最终资源,它们不会是不再使用常量。此外,我在两个项目中都使用 Roboguice。因此在这种情况下声明 @InjectView(R.id.view_di) 会产生编译错误,因为它需要常量。
标签: java android eclipse roboguice