I’m running on Mint 12, Play 2.0, and trying to get Proguard to work, because my Heroku slug is too big.
So, I’m using the xsbt proguard plugin, and it barfs because ProGuard doesn’t like the bytecode format, 51. It’s ProGuard 4.7, so it’s supposed to work with 51, but it doesn’t:
[error] {file:/(some path)/*:proguard: java.io.IOException: Can't read
[/(that path)/target/scala-2.9.1/(my app)_2.9.1-1.0-SNAPSHOT.jar]
(Can't process class [controllers/routes$ref.class]
(Unsupported version number [51.0] for class format))
So, I look at what’s in the jar, and almost all the lines are like this:
./controllers/Application.class: compiled Java class data, version 49.0 (Java 1.5)
But the router looks like this:
./controllers/routes.class: compiled Java class data, version 51.0
What would make the router choose a different -target than everything else?
I’m using the JDK7 that comes with Mint, if that matters:
OpenJDK Runtime Environment (IcedTea7 2.0) (7~b147-2.0-0ubuntu0.11.10.1)
OpenJDK 64-Bit Server VM (build 21.0-b17, mixed mode
routes.classhas different bytecode format because it is compiled by javac from auto generatedwhile other class files are produced by scala compiler.