Gmavenplus: Unrecognized target bytecode

When you try to compile Groovy with Java and use gmavenplus plugin for that purpose, you may face with this errors: To solve this problem, you need replace the ‘8’ to ‘1.8’ in your maven-compiler-plugin: If you don’t have maven-compiler-plugin – add it to your project’s pom.xml, as above.

READ MORE

Error while calling a method on a Groovy class

You may encounter an error when compiling your project that looks like this: It is not at all clear what class are meant. If you work with IntelliJ IDEA – this is the reason. Sometime it parses maven build/compile logs incorrectly, so the second part of the exception was lost. Compile manually through the terminal […]

READ MORE

Perform some action when spec fails in Spock Framework

Let’s imagine that we need to perform a certain sequence of actions when a spec fails. If you just need to close some resources when spec fails – don’t reinvent the wheel and use an easy and correct method – @AutoCleanup annotation. I wrote about it in detail earlier: https://mchesnavsky.tech/closing-resources-in-spock-framework. Keep in mind that in […]

READ MORE

Closing resources in Spock Framework

If we have any resource and we need to close it when current spec fails or done (for example, ZooKeeper client), the easiest way is to use the @AutoCleanup annotation with the resource: By default, it calls the close() method, but you can put your own: And optionally use quiet mode, when Spock Framework are going […]

READ MORE

Groovy Runtime Exception: Could not find matching constructor

If you encounter an exception like this: Then you most likely have a class InnerClass, which is declared inside BaseClass: And in some other class (even inherited from BaseClass) you are trying to instantiate InnerClass: Then you will get groovy.lang.GroovyRuntimeException: Could not find matching constructor. The point is that objects of inner classes in groovy need […]

READ MORE