Q:

sbt-proguard vs xsbt-proguard-plugin vs ...?

It looks like there are two SBT plugins for running ProGuard. Can anyone speak to their relative strengths and weaknesses? I haven't found a comparison online yet.

xsbt-proguard-plugin - https://github.com/adamw/xsbt-proguard-plugin - ~2 year old independent project; last touched on GitHub 6mo ago
sbt-proguard - https://github.com/sbt/sbt-proguard - ~5 mo old project; part of sbt official repo; last touched on GitHub 2 days ago

I'm assuming xsbt-proguard-plugin is generally more mature, but why would the SBT folks spin up their own?

A:

I've tried both.  They are similar in function, though each has minor quirks.
I couldn't get the "merge" function in sbt-proguard to work, probably due to a temp directory naming bug.
However, I ended up choosing sbt-proguard over the other one anyway, because xsbt-proguard-plugin does not provide the output in a way that can be accessed from sbt, e.g. for jarsigning or other further processing.  I ended up using assembly to handle the merge.  After some wrangling, I got it to work.  The process and sample build.sbt is on my blog.

