The information that they gave to you is wrong.
Groovy can interact with Java classes without problems. In fact, most the the Spock core classes are Java (.java) not Groovy classes.
The problems about testing Java classes with Groovy are caused by Maven (well not Maven directly, but by the plugins in charge of compilation and execution of tests).
For some reason the interaction between the Groovy plugin and the Maven test plugin (surefire) sucks. (See the UPDATE it doesn't sucks in recent versions of GMaven).
I ran into this problem a long time ago. Which probably is caused by how the classloader for the test execution is setup.
I can't give you an answer on how to fix that Maven Groovy/Surefire compatibility problem, because at that time instead of trying to fix it I took the fastest path for me: I switched from Maven to Gradle.
And about the differences on compilation... don't do the .java to .groovy rename.
Groovy is a wonderful dynamic language, and is easy to migrate from Java to Groovy. But is not exactly the same language, there are some little differences to take into account: http://groovy.codehaus.org/Differences+from+Java
So if you rename the files automatically for the testing, there is a good chance that some things doesn't compile like array literals, or they compile with a different semantic like
So my advice is: Spock is a wonderful framework for testing, and Groovy can save you a lot of repetitive code. You can migrate all to Groovy, but that decision requires more evaluation of the technical aspects of your project. If you want to use Groovy for tests and Java for main classes, look for a solution in the Maven community or try switching your build to Gradle.
Additional note: The Groovy compiler is a superset of the Java compiler. When a .java file is given to the Groovy compiler it uses the Java compiler. It means that you can mix .java and .groovy in the same directory and use the Groovy compiler to compile all. Maybe that setup helps you with the Maven test plugin.
UPDATE: Recently I've to work with a project using Spock and Maven 3. Making both to coexist is easier than before :)
First, configure your GMaven plugin, you can see an example here: https://gist.github.com/xlson/1253342
Then you have to configure Surefire so it sees your test classes:
The trick is in the
regex expression since according to Surefire docs it applies to classes (if you don't use regex it applies to source files).