Bugs
- Fix Javadoc mismatch in
ReflectionUtils.getDeclaredMethods(#365) - Remove unneeded fork parameter (#361)
- Fix Groovy 5 shell support (closes #367) (#380)
Enhancements
Potentially breaking changes
- Removed the
forkparameter - GMavenPlus no longer includes JLine, Jansi, Ant, or Ivy dependencies
Notes
- GMavenPlus used to include the Jansi 2.4 and JLine 2.14.6 so that Groovy 2.2.0-beta-1 and newer would have colors work in Groovysh out of the box. However, JLine 2 is EOL, Groovy 5.x uses Jline 3, and Groovy 6.x uses JLine 4. Additionally, Maven 3.9 introduces a JLine 2.x into the classpath. This meant that Groovy 5.x and 6.x would never have their colors work with Maven 3.9.
- GMavenPlus used to include Ant and Ivy, to make it easy to use
@GrabandAntBuilderin scripts, Groovysh, and Groovy Console. The need to remove JLine/Jansi gave a reason to revisit this philosophy. Here are the reasons why this was abandoned.- The plugin version can win over the version in the project (unless you make sure to use an
<exclusion> - To avoid downloading dependencies you may or may not need
- If future Groovy versions use other versions of Ant/Ivy (like we ran into with JLine/Jansi), we'll have a similar breaking change needed
- The plugin version can win over the version in the project (unless you make sure to use an
- Here are examples of how to add back the dependencies you need
<plugin> <groupId>org.codehaus.gmavenplus</groupId> <artifactId>gmavenplus-plugin</artifactId> <version>5.0.0</version> <executions> <execution> <goals> <goal>execute</goal> </goals> </execution> </executions> <dependencies> <!-- Add Apache Ant if using AntBuilder --> <dependency> <groupId>org.apache.ant</groupId> <artifactId>ant</artifactId> <version>1.10.15</version> </dependency> <!-- Add Apache Ivy if using @Grab --> <dependency> <groupId>org.apache.ivy</groupId> <artifactId>ivy</artifactId> <version>2.5.3</version> </dependency> <!-- Add JLine 2 if using shell with Groovy 2.x/3.x/4.x --> <dependency> <groupId>jline</groupId> <artifactId>jline</artifactId> <version>2.14.6</version> </dependency> <!-- Add JAnsi 1.x for terminal colors with JLine 2 --> <dependency> <groupId>org.fusesource.jansi</groupId> <artifactId>jansi</artifactId> <version>1.18</version> </dependency> </dependencies> </plugin>
Full Changelog: 4.3.1...5.0.0