[MCOMPILER-426] add flag to enable-preview java compiler feature (#98)

* [MCOMPILER-426] add flag to enable-preview java compiler feature
* use plexus-compiler 2.11.1 version

Signed-off-by: Olivier Lamy <olamy@apache.org>
diff --git a/pom.xml b/pom.xml
index b21709d..442fbd6 100644
--- a/pom.xml
+++ b/pom.xml
@@ -68,7 +68,7 @@
       ! The following property is used in the integration tests MCOMPILER-157
     -->
     <mavenPluginPluginVersion>3.5</mavenPluginPluginVersion>
-    <plexusCompilerVersion>2.11.0</plexusCompilerVersion>
+    <plexusCompilerVersion>2.11.1</plexusCompilerVersion>
 
     <groovyVersion>2.4.21</groovyVersion>
     <groovyEclipseCompilerVersion>3.7.0</groovyEclipseCompilerVersion>
diff --git a/src/main/java/org/apache/maven/plugin/compiler/AbstractCompilerMojo.java b/src/main/java/org/apache/maven/plugin/compiler/AbstractCompilerMojo.java
index 915d39f..e0ec1db 100644
--- a/src/main/java/org/apache/maven/plugin/compiler/AbstractCompilerMojo.java
+++ b/src/main/java/org/apache/maven/plugin/compiler/AbstractCompilerMojo.java
@@ -140,6 +140,14 @@
     @Parameter( property = "maven.compiler.parameters", defaultValue = "false" )
     private boolean parameters;
 
+
+    /**
+     * Set to <code>true</code> to Enable preview language features of the java compiler
+     * @since 3.10.1
+     */
+    @Parameter( property = "maven.compiler.enablePreview", defaultValue = "false" )
+    private boolean enablePreview;
+
     /**
      * Set to <code>true</code> to show messages about what the compiler is doing.
      */
@@ -695,6 +703,8 @@
 
         compilerConfiguration.setParameters( parameters );
 
+        compilerConfiguration.setEnablePreview( enablePreview );
+
         compilerConfiguration.setVerbose( verbose );
 
         compilerConfiguration.setShowWarnings( showWarnings );