【问题标题】:How to handle libraries used by a referenced library project?如何处理引用的库项目使用的库?
【发布时间】:2013-07-02 23:16:12
【问题描述】:

我今天早上通过 Android SDK Manager 安装了一堆更新,包括 Android SDK Tools 22.0.1。到目前为止,这似乎是灾难性的。一场灾难是处理图书馆。这是场景:

我有一个使用库项目 libFoo 的项目 projFoo。 libFoo 使用了十几个库或项目。换句话说,libFoo 在其 Java 构建路径中具有以下内容: 项目A,项目B,项目C,... lib1.jar、lib2.jar、lib3.jar ...

我以前只需要将 libFoo 添加到 projFoo 的构建路径中,并且在我安装更新之前一切正常。

更新后,我一直在projFoo的构建路径中一一添加projA,projB,lib1.jar,即使projFoo不直接使用它们。如果不这样做,我运行应用程序时会发生 java.lang.NoClassDefFoundError。

我已经清理了所有项目并多次重新启动 Eclipse。我还在 libFoo 的 Order 和 Export 中检查了那些引用的项目和库,但添加这些引用似乎仍然是必要的。这是处理这个问题的正确方法吗?

【问题讨论】:

  • "这是处理这个问题的正确方法吗?" - 不。您应该能够在“订购和导出”选项卡中检查“Android 私有库”:stackoverflow.com/questions/16596969/…
  • 感谢您的提示。是的,这就是关键。

标签: java android libraries buildpath


【解决方案1】:

在 Java Build Path 的 order 和 export 选项卡中,确保选中 Android private Libraries 和 Android Dependencies。

任何 .jar 格式的库都应该放在项目的 libs 文件夹中。无需将它们添加到构建路径中。

任何作为项目的库都可以添加到 Java Build Path Projects 选项卡中,或者如果它是 android 项目,您可以将其添加到 Android 窗格下的 Library 部分。

【讨论】:

  • 感谢您的回答。检查应用项目的Android私有库是关键。我没有选中库项目的 Android 私有库,一切似乎都很好。我希望我对整个事情有一些深入的了解。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2016-05-25
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多