karlmdavis / rps-tourney

An online multi-player Rock-Paper-Scissors game. Just because.
https://rpstourney.com/
1 stars 2 forks source link

IT Failure: "java.lang.instrument.IllegalClassFormatException: Error while instrumenting class com/steadystate/css/parser/SACParserCSS3TokenManager" #104

Closed karlmdavis closed 9 years ago

karlmdavis commented 9 years ago

While running the ITs yesterday, I received the following failure:

-------------------------------------------------------------------------------
Test set: com.justdavis.karl.rpstourney.webapp.game.GameIT
-------------------------------------------------------------------------------
Tests run: 14, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 54.175 sec <<< FAILURE! - in com.justdavis.karl.rpstourney.webapp.game.GameIT
updateName(com.justdavis.karl.rpstourney.webapp.game.GameIT)  Time elapsed: 0.105 sec  <<< ERROR!
com.justdavis.karl.rpstourney.service.client.HttpClientException: Unexpected HTTP 500 status on response: Internal Server Error
    at com.justdavis.karl.rpstourney.service.client.game.GameClient.createGame(GameClient.java:63)
    at com.justdavis.karl.rpstourney.webapp.game.GameIT.updateName(GameIT.java:235)

Digging into the logs, this turns out to have been caused by the following odd problem:

java.lang.instrument.IllegalClassFormatException: Error while instrumenting class com/steadystate/css/parser/SACParserCSS3TokenManager.
    at org.jacoco.agent.rt.internal_b0d6a23.CoverageTransformer.transform(CoverageTransformer.java:95)
    ...
Caused by: java.io.IOException: Error while instrumenting class com/steadystate/css/parser/SACParserCSS3TokenManager.
    at org.jacoco.agent.rt.internal_b0d6a23.core.instr.Instrumenter.instrumentError(Instrumenter.java:152)
    ...
Caused by: java.lang.RuntimeException: Method code too large!
    at org.jacoco.agent.rt.internal_b0d6a23.asm.MethodWriter.getSize(MethodWriter.java:2036)
    ...

I've pasted the full stack trace here: http://pastebin.com/bgVSw8rt. There's lots of other stuff in the log, but this seems like a good candidate for the actual problem.

karlmdavis commented 9 years ago

This fine gentleman here seemed to have the correct solution: http://stackoverflow.com/a/14563661/1851299. Works for me, with this exclusion.