2012-11-09 167 views
2

我想在我的项目中包含一个jar库,但库很大。将jar包含在项目中。包括Android库项目

我没有使用该库中的所有类,所以当我编译我的项目时,所有的jar内容都将被放到编译的项目中,还是只放入我正在使用的文件(类等等)?

而关于Android库项目相同的问题:如果我包括了Android库项目在我的项目,我不使用所有的lib资源,将编译器把所有库项目资源,在我的项目或仅资源,我已经使用

+0

问题是,你可以' t只包含您使用的.jar类,因为它可能会使用您不需要的相同.jar中的其他类。 Android不仅仅只有一个类或一个包,几乎所有的东西都在一起。 – Flawyte

回答

3

我道歉,如果我不明白的问题,但也许你正在寻找的是这样的:

Selectively include dependencies in JAR

所以这里的插件

https://github.com/nuttycom/sbt-proguard-plugin

SBT的ProGuard看起来像它会减少不必要的类,这样你的项目将不会“重”

+1

完全有效且适用的答案。太差了OP没有正派的热情答复或选择一个 – kwikness

+0

@kwikness谢谢你的赞赏!是的,我认为OP可能不知道如何看好或接受他在S.O.上的声誉有限。 –

0

虽然您可能不会直接在JAR中使用类,但您可以间接使用它们。因此,将这些类从jar中移除可能是不安全的 - 除非您100%确定它们不是由您使用的所使用的类间接使用的。

+0

但我想,编译器总是知道哪些类正在使用,哪些不是。 –