我需要在我的安卓项目中使用Newman, StackMob’s Http Client库。
我使用sbt-assembly生成一个包含所有依赖项的(超级)jar。该命令给了我一个非常大的jar文件(48mb),Android无法将其转换为dex。
如何在jar库中只添加所需的依赖项?
发布于 2013-12-18 23:57:34
我在excluding JARs and files上编写了sbt-assembly的自述文件中的整个部分。
当你说:
如何在jar库中只添加所需的依赖项?
在sbt-assembly的上下文中,“依赖”这个词通常表示依赖jars。问题出在jar级别,您将需要所有这些组件。您必须做的是找出未使用的*.class文件,并将其排除在最终的fat jar之外。sbt-assembly有合并策略,你可以用它来忽略文件。
然而,对于Android开发,因为有太多的文件需要排除,所以你需要一些自动分析的东西。这就是ProGuard的用武之地。这将使生成的jar变得更小。但这也有点像巫毒,因为你可能不能确定你是否需要某个类。如果您还没有,请尝试使用pfn/android-sdk-plugin。它缓存ProGuard结果,并使其更快。
https://stackoverflow.com/questions/20658381
复制相似问题