hakandilek / spock

Automatically exported from code.google.com/p/spock
0 stars 0 forks source link

Check for multiple Spock versions on class path #68

Open GoogleCodeExporter opened 9 years ago

GoogleCodeExporter commented 9 years ago
Every once in a while, users run into NoSuchMethodError etc. because they have 
multiple Spock 
versions on the class path (without being aware of it). We should check for 
this problem (either 
always or when an exception like NoSuchMethodError occurs) and tell the user 
what's wrong.

Original issue reported on code.google.com by pnied...@gmail.com on 10 Feb 2010 at 12:49

GoogleCodeExporter commented 9 years ago
Concrete example: Due to an old Spock version on the class path, EarlyTransform 
(which no longer exists in 0.4) 
was registered, causing a NoSuchMethodError when it was run.

Original comment by pnied...@gmail.com on 25 May 2010 at 1:04

GoogleCodeExporter commented 9 years ago
I just had the same problem on my very first experiment with spock. Obviously 
the spock that came packaged with groovy prohibits me from using any other 
spock version on this machine. 
What's even worse is the error message, which points nowhere near the actual 
problem.
Seeing that there has been no activity concerning this topic since last may I 
hardly dare to ask if a swolution is on the way...

Original comment by tempestr...@gmail.com on 25 Mar 2011 at 7:38

GoogleCodeExporter commented 9 years ago
You seem to think that the problem you encountered is Spock's fault, but it 
really isn't. In fact, Spock is the only library I know that goes to great 
lengths to inform the user of class path problems. The one thing it doesn't do 
yet is to detect multiple versions of itself.

If you choose to use a Groovy distribution that packages third-party libraries, 
you can't expect to be able to use a different version of any of them. Such 
distributions are a trade-off between convenience and flexibility. It's your 
call whether to use them or not.

Fortunately there are other convenient ways to use Spock. For experimenting 
with Spock we offer Spock Web Console (http://meet.spockframework.org). For 
getting real work done you should use a proper build tool. The spock-example 
project even comes with Ant, Maven, and Gradle builds that work out of the box. 
I think this shows our determination to make Spock as easy to use as possible.

Original comment by pe...@gradle.biz on 26 Mar 2011 at 12:23