sbt-proguard:制作两个罐子

时间:2014-09-01 12:31:21

标签: scala sbt proguard

我有以下要求。我有一个包含两个包的项目:

com.interfaces
com.impl

我正在使用sbt-proguard插件收缩我的项目(我主要需要缩小com.impl,com.interfaces几乎没有代码)。问题是,我需要com.interfaces需要在自己独立的jar中。 Proguard默认将所有内容放在一个jar中,即使我将com.interfaces分成它自己的sbt-project(我也没有问题)。

我接近制作一个只是解压缩jar的后期构建脚本,并制作两个带7-zip的新罐子,但我相信有更好的解决方案:)

1 个答案:

答案 0 :(得分:0)

ProGuard在其输入和输出上支持各种类型的过滤器。例如:

-outjars interfaces.jar(com/interfaces/**)
-outjars impl.jar(com/impl/**)
-outjars remainder.jar

或使用单独的输入罐:

-injars  interfaces_in.jar
-outjars interfaces_out.jar
-injars  impl_in.jar
-outjars impl_out.jar

请参阅ProGuard手册>例子> Filtering the input and the output

不幸的是,我不知道SBT是否支持这些功能。