You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tinkerpop.apache.org by sp...@apache.org on 2021/07/29 17:06:59 UTC
[tinkerpop] 01/01: TINKERPOP-2411 Created gremlin-annotations module
This is an automated email from the ASF dual-hosted git repository.
spmallette pushed a commit to branch TINKERPOP-2411
in repository https://gitbox.apache.org/repos/asf/tinkerpop.git
commit 45a0b500b6f02e0d25a8e93d963921a7cd63d346
Author: Stephen Mallette <st...@amazon.com>
AuthorDate: Thu Jul 29 13:05:58 2021 -0400
TINKERPOP-2411 Created gremlin-annotations module
Moved GremlinDsl annotation and related structure from gremlin-core to gremlin-annotations.
---
CHANGELOG.asciidoc | 1 +
docs/src/reference/gremlin-variants.asciidoc | 14 +-
docs/src/upgrade/release-3.6.x.asciidoc | 22 +++
gremlin-annotations/pom.xml | 150 +++++++++++++++++++++
.../gremlin/process/traversal/dsl/GremlinDsl.java | 0
.../process/traversal/dsl/GremlinDslProcessor.java | 0
.../process/traversal/dsl/ProcessorException.java | 0
.../services/javax.annotation.processing.Processor | 0
.../traversal/dsl/GremlinDslProcessorTest.java | 0
.../dsl/SocialPackageTraversalSourceDsl.java | 0
.../process/traversal/dsl/RemoteDslTraversal.java | 0
.../traversal/dsl/SocialMoveTraversalDsl.java | 0
.../dsl/SocialNoDefaultMethodsTraversalDsl.java | 0
.../traversal/dsl/SocialPackageTraversalDsl.java | 0
.../process/traversal/dsl/SocialTraversalDsl.java | 0
.../src/main/resources/archetype-resources/pom.xml | 6 +
gremlin-core/pom.xml | 86 ------------
.../gremlin/jsr223/ImportGremlinPluginTest.java | 10 +-
gremlin-groovy/pom.xml | 28 ++++
pom.xml | 3 +-
20 files changed, 225 insertions(+), 95 deletions(-)
diff --git a/CHANGELOG.asciidoc b/CHANGELOG.asciidoc
index bdaa1b6..bed0a7f 100644
--- a/CHANGELOG.asciidoc
+++ b/CHANGELOG.asciidoc
@@ -26,6 +26,7 @@ limitations under the License.
* Changed TinkerGraph to allow identifiers to be heterogeneous when filtering.
* `TraversalOpProcessor` no longer accepts a `String` representation of `Bytecode` for the "gremlin" argument which was left to support older versions of the drivers.
* Removed requirement that "ids" used to filter vertices and edges need to be all of a single type.
+* Created `gremlin-annotations` module where the `@GremlinDsl` annotation and related code has been moved.
* Replaced log4j usage with logback where builds rely on and packaged distributions now contain the latter.
* Prevented metrics computation unless the traversal is in a locked state.
diff --git a/docs/src/reference/gremlin-variants.asciidoc b/docs/src/reference/gremlin-variants.asciidoc
index 23fc0c1..0ad664a 100644
--- a/docs/src/reference/gremlin-variants.asciidoc
+++ b/docs/src/reference/gremlin-variants.asciidoc
@@ -497,8 +497,18 @@ to "g" and "g1" and "g2" are automatically rebound into "g" on the server-side.
[[gremlin-java-dsl]]
=== Domain Specific Languages
-Creating a <<dsl,Domain Specific Language>> (DSL) in Java requires the `@GremlinDsl` Java annotation in `gremlin-core`.
-This annotation should be applied to a "DSL interface" that extends `GraphTraversal.Admin`:
+Creating a <<dsl,Domain Specific Language>> (DSL) in Java requires the `@GremlinDsl` Java annotation in the
+`gremlin-annotations` module. This annotation should be applied to a "DSL interface" that extends
+`GraphTraversal.Admin`:
+
+[source,xml]
+----
+<dependency>
+ <groupId>org.apache.tinkerpop</groupId>
+ <artifactId>gremlin-annotations</artifactId>
+ <version>x.y.z</version>
+</dependency>
+----
[source,java]
----
diff --git a/docs/src/upgrade/release-3.6.x.asciidoc b/docs/src/upgrade/release-3.6.x.asciidoc
index 6a3e520..4549612 100644
--- a/docs/src/upgrade/release-3.6.x.asciidoc
+++ b/docs/src/upgrade/release-3.6.x.asciidoc
@@ -27,6 +27,28 @@ Please see the link:https://github.com/apache/tinkerpop/blob/3.6.0/CHANGELOG.asc
=== Upgrading for Users
+==== gremlin-annotations
+
+There is a new module called `gremlin-annotations` and it holds the annotations used to construct
+link:https://tinkerpop.apache.org/docs/current/reference/#gremlin-java-dsl[Java-based Gremlin DSLs]. These annotations
+were formerly in `gremlin-core` and therefore it will be necessary to modify dependencies accordingly when upgrading
+to 3.6.0. Package and class names have remained the same and general usage is unchanged.
+
+[source,xml]
+----
+<dependency>
+ <groupId>org.apache.tinkerpop</groupId>
+ <artifactId>gremlin-annotations</artifactId>
+ <version>3.6.0</version>
+</dependency>
+----
+
+It is worth noting that `gremlin-groovy` utilized the DSL annotations to construct the
+link:https://tinkerpop.apache.org/docs/3.6.0/reference/#credentials-dsl[Credentials DSL] so the `gremlin-annotations`
+package is now explicitly associated to `gremlin-groovy` but as an `<optional>` dependency.
+
+See:link:https://issues.apache.org/jira/browse/TINKERPOP-2411[TINKERPOP-2411]
+
==== Logging Changes
In Gremlin Server and Gremlin Console distributions, the default logging implementation of log4j 1.2.x has been
diff --git a/gremlin-annotations/pom.xml b/gremlin-annotations/pom.xml
new file mode 100644
index 0000000..74d0293
--- /dev/null
+++ b/gremlin-annotations/pom.xml
@@ -0,0 +1,150 @@
+<!--
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements. See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You under the Apache License, Version 2.0
+(the "License"); you may not use this file except in compliance with
+the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+-->
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+ <parent>
+ <artifactId>tinkerpop</artifactId>
+ <groupId>org.apache.tinkerpop</groupId>
+ <version>3.6.0-SNAPSHOT</version>
+ </parent>
+
+ <artifactId>gremlin-annotations</artifactId>
+ <name>Apache TinkerPop :: Gremlin Annotations</name>
+
+ <dependencies>
+ <dependency>
+ <groupId>org.apache.tinkerpop</groupId>
+ <artifactId>gremlin-core</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>com.squareup</groupId>
+ <artifactId>javapoet</artifactId>
+ <version>1.13.0</version>
+ </dependency>
+ <!-- TESTING -->
+ <dependency>
+ <groupId>junit</groupId>
+ <artifactId>junit</artifactId>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.hamcrest</groupId>
+ <artifactId>hamcrest</artifactId>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.mockito</groupId>
+ <artifactId>mockito-core</artifactId>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>com.google.testing.compile</groupId>
+ <artifactId>compile-testing</artifactId>
+ <version>0.19</version>
+ <scope>test</scope>
+ <exclusions>
+ <exclusion>
+ <groupId>com.google.guava</groupId>
+ <artifactId>guava</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+ <!-- self-conflict resolutions over compile-testing -->
+ <dependency>
+ <groupId>com.google.guava</groupId>
+ <artifactId>guava</artifactId>
+ <version>30.0-jre</version>
+ <exclusions>
+ <!-- prefer the versions from compile-testing -->
+ <exclusion>
+ <groupId>org.checkerframework</groupId>
+ <artifactId>checker-qual</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>com.google.errorprone</groupId>
+ <artifactId>error_prone_annotations</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+ <dependency>
+ <groupId>org.checkerframework</groupId>
+ <artifactId>checker-qual</artifactId>
+ <version>3.7.0</version>
+ </dependency>
+ </dependencies>
+ <build>
+ <directory>${basedir}/target</directory>
+ <finalName>${project.artifactId}-${project.version}</finalName>
+ <testResources>
+ <testResource>
+ <directory>${basedir}/src/test/resources
+ </directory>
+ </testResource>
+ </testResources>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-surefire-plugin</artifactId>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-failsafe-plugin</artifactId>
+ </plugin>
+ <!-- -proc:none = disable annotation processing - testing of the GremlinDslProcessor is handled separately -->
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-compiler-plugin</artifactId>
+ <configuration>
+ <source>1.8</source>
+ <target>1.8</target>
+ <compilerArgs>
+ <arg>-parameters</arg>
+ <arg>-proc:none</arg>
+ </compilerArgs>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+
+ <profiles>
+ <profile>
+ <id>jdk11</id>
+ <activation>
+ <jdk>11</jdk>
+ </activation>
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-compiler-plugin</artifactId>
+ <version>3.8.1</version>
+ <configuration>
+ <release>8</release>
+ <compilerArgs>
+ <arg>-parameters</arg>
+ <arg>-proc:none</arg>
+ </compilerArgs>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+ </profile>
+ </profiles>
+</project>
\ No newline at end of file
diff --git a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/dsl/GremlinDsl.java b/gremlin-annotations/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/dsl/GremlinDsl.java
similarity index 100%
rename from gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/dsl/GremlinDsl.java
rename to gremlin-annotations/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/dsl/GremlinDsl.java
diff --git a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/dsl/GremlinDslProcessor.java b/gremlin-annotations/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/dsl/GremlinDslProcessor.java
similarity index 100%
rename from gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/dsl/GremlinDslProcessor.java
rename to gremlin-annotations/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/dsl/GremlinDslProcessor.java
diff --git a/gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/dsl/ProcessorException.java b/gremlin-annotations/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/dsl/ProcessorException.java
similarity index 100%
rename from gremlin-core/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/dsl/ProcessorException.java
rename to gremlin-annotations/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/dsl/ProcessorException.java
diff --git a/gremlin-core/src/main/resources/META-INF/services/javax.annotation.processing.Processor b/gremlin-annotations/src/main/resources/META-INF/services/javax.annotation.processing.Processor
similarity index 100%
rename from gremlin-core/src/main/resources/META-INF/services/javax.annotation.processing.Processor
rename to gremlin-annotations/src/main/resources/META-INF/services/javax.annotation.processing.Processor
diff --git a/gremlin-core/src/test/java/org/apache/tinkerpop/gremlin/process/traversal/dsl/GremlinDslProcessorTest.java b/gremlin-annotations/src/test/java/org/apache/tinkerpop/gremlin/process/traversal/dsl/GremlinDslProcessorTest.java
similarity index 100%
rename from gremlin-core/src/test/java/org/apache/tinkerpop/gremlin/process/traversal/dsl/GremlinDslProcessorTest.java
rename to gremlin-annotations/src/test/java/org/apache/tinkerpop/gremlin/process/traversal/dsl/GremlinDslProcessorTest.java
diff --git a/gremlin-core/src/test/java/org/apache/tinkerpop/gremlin/process/traversal/dsl/SocialPackageTraversalSourceDsl.java b/gremlin-annotations/src/test/java/org/apache/tinkerpop/gremlin/process/traversal/dsl/SocialPackageTraversalSourceDsl.java
similarity index 100%
rename from gremlin-core/src/test/java/org/apache/tinkerpop/gremlin/process/traversal/dsl/SocialPackageTraversalSourceDsl.java
rename to gremlin-annotations/src/test/java/org/apache/tinkerpop/gremlin/process/traversal/dsl/SocialPackageTraversalSourceDsl.java
diff --git a/gremlin-core/src/test/resources/org/apache/tinkerpop/gremlin/process/traversal/dsl/RemoteDslTraversal.java b/gremlin-annotations/src/test/resources/org/apache/tinkerpop/gremlin/process/traversal/dsl/RemoteDslTraversal.java
similarity index 100%
rename from gremlin-core/src/test/resources/org/apache/tinkerpop/gremlin/process/traversal/dsl/RemoteDslTraversal.java
rename to gremlin-annotations/src/test/resources/org/apache/tinkerpop/gremlin/process/traversal/dsl/RemoteDslTraversal.java
diff --git a/gremlin-core/src/test/resources/org/apache/tinkerpop/gremlin/process/traversal/dsl/SocialMoveTraversalDsl.java b/gremlin-annotations/src/test/resources/org/apache/tinkerpop/gremlin/process/traversal/dsl/SocialMoveTraversalDsl.java
similarity index 100%
rename from gremlin-core/src/test/resources/org/apache/tinkerpop/gremlin/process/traversal/dsl/SocialMoveTraversalDsl.java
rename to gremlin-annotations/src/test/resources/org/apache/tinkerpop/gremlin/process/traversal/dsl/SocialMoveTraversalDsl.java
diff --git a/gremlin-core/src/test/resources/org/apache/tinkerpop/gremlin/process/traversal/dsl/SocialNoDefaultMethodsTraversalDsl.java b/gremlin-annotations/src/test/resources/org/apache/tinkerpop/gremlin/process/traversal/dsl/SocialNoDefaultMethodsTraversalDsl.java
similarity index 100%
rename from gremlin-core/src/test/resources/org/apache/tinkerpop/gremlin/process/traversal/dsl/SocialNoDefaultMethodsTraversalDsl.java
rename to gremlin-annotations/src/test/resources/org/apache/tinkerpop/gremlin/process/traversal/dsl/SocialNoDefaultMethodsTraversalDsl.java
diff --git a/gremlin-core/src/test/resources/org/apache/tinkerpop/gremlin/process/traversal/dsl/SocialPackageTraversalDsl.java b/gremlin-annotations/src/test/resources/org/apache/tinkerpop/gremlin/process/traversal/dsl/SocialPackageTraversalDsl.java
similarity index 100%
rename from gremlin-core/src/test/resources/org/apache/tinkerpop/gremlin/process/traversal/dsl/SocialPackageTraversalDsl.java
rename to gremlin-annotations/src/test/resources/org/apache/tinkerpop/gremlin/process/traversal/dsl/SocialPackageTraversalDsl.java
diff --git a/gremlin-core/src/test/resources/org/apache/tinkerpop/gremlin/process/traversal/dsl/SocialTraversalDsl.java b/gremlin-annotations/src/test/resources/org/apache/tinkerpop/gremlin/process/traversal/dsl/SocialTraversalDsl.java
similarity index 100%
rename from gremlin-core/src/test/resources/org/apache/tinkerpop/gremlin/process/traversal/dsl/SocialTraversalDsl.java
rename to gremlin-annotations/src/test/resources/org/apache/tinkerpop/gremlin/process/traversal/dsl/SocialTraversalDsl.java
diff --git a/gremlin-archetype/gremlin-archetype-dsl/src/main/resources/archetype-resources/pom.xml b/gremlin-archetype/gremlin-archetype-dsl/src/main/resources/archetype-resources/pom.xml
index 99a449c..96677ea 100644
--- a/gremlin-archetype/gremlin-archetype-dsl/src/main/resources/archetype-resources/pom.xml
+++ b/gremlin-archetype/gremlin-archetype-dsl/src/main/resources/archetype-resources/pom.xml
@@ -35,6 +35,12 @@ limitations under the License.
<version>${project.version}</version>
</dependency>
<dependency>
+ <groupId>org.apache.tinkerpop</groupId>
+ <artifactId>gremlin-annotations</artifactId>
+ <version>${project.version}</version>
+ <optional>true</optional>
+ </dependency>
+ <dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
<version>${logback.version}</version>
diff --git a/gremlin-core/pom.xml b/gremlin-core/pom.xml
index 861ef74..e48c357 100644
--- a/gremlin-core/pom.xml
+++ b/gremlin-core/pom.xml
@@ -77,11 +77,6 @@ limitations under the License.
</exclusions>
</dependency>
<dependency>
- <groupId>com.squareup</groupId>
- <artifactId>javapoet</artifactId>
- <version>1.8.0</version>
- </dependency>
- <dependency>
<groupId>net.objecthunter</groupId>
<artifactId>exp4j</artifactId>
<version>0.4.8</version>
@@ -116,47 +111,6 @@ limitations under the License.
<artifactId>hamcrest</artifactId>
<scope>test</scope>
</dependency>
- <dependency>
- <groupId>com.google.testing.compile</groupId>
- <artifactId>compile-testing</artifactId>
- <version>0.15</version>
- <scope>test</scope>
- <exclusions>
- <exclusion>
- <groupId>com.google.guava</groupId>
- <artifactId>guava</artifactId>
- </exclusion>
- <exclusion>
- <groupId>com.google.errorprone</groupId>
- <artifactId>error_prone_annotations</artifactId>
- </exclusion>
- </exclusions>
- </dependency>
- <!-- resolve self-conflict within compile-testing -->
- <dependency>
- <groupId>com.google.guava</groupId>
- <artifactId>guava</artifactId>
- <version>23.4-android</version>
- <scope>test</scope>
- <exclusions>
- <exclusion>
- <groupId>com.google.errorprone</groupId>
- <artifactId>error_prone_annotations</artifactId>
- </exclusion>
- </exclusions>
- </dependency>
- <dependency>
- <groupId>com.google.errorprone</groupId>
- <artifactId>error_prone_annotations</artifactId>
- <version>2.0.19</version>
- <scope>test</scope>
- <exclusions>
- <exclusion>
- <artifactId>tools</artifactId>
- <groupId>com.sun</groupId>
- </exclusion>
- </exclusions>
- </dependency>
</dependencies>
<build>
<directory>${basedir}/target</directory>
@@ -176,46 +130,6 @@ limitations under the License.
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-failsafe-plugin</artifactId>
</plugin>
- <!-- disable annotation processing - testing of the GremlinDslProcessor is handled separately -->
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-compiler-plugin</artifactId>
- <configuration>
- <source>1.8</source>
- <target>1.8</target>
- <compilerArgs>
- <arg>-parameters</arg>
- <arg>-proc:none</arg>
- </compilerArgs>
- </configuration>
- </plugin>
</plugins>
</build>
-
- <profiles>
- <profile>
- <id>jdk11</id>
- <activation>
- <jdk>11</jdk>
- </activation>
- <build>
- <pluginManagement>
- <plugins>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-compiler-plugin</artifactId>
- <version>3.8.1</version>
- <configuration>
- <release>8</release>
- <compilerArgs>
- <arg>-parameters</arg>
- <arg>-proc:none</arg>
- </compilerArgs>
- </configuration>
- </plugin>
- </plugins>
- </pluginManagement>
- </build>
- </profile>
- </profiles>
</project>
diff --git a/gremlin-core/src/test/java/org/apache/tinkerpop/gremlin/jsr223/ImportGremlinPluginTest.java b/gremlin-core/src/test/java/org/apache/tinkerpop/gremlin/jsr223/ImportGremlinPluginTest.java
index 3bf9757..b2a1a3c 100644
--- a/gremlin-core/src/test/java/org/apache/tinkerpop/gremlin/jsr223/ImportGremlinPluginTest.java
+++ b/gremlin-core/src/test/java/org/apache/tinkerpop/gremlin/jsr223/ImportGremlinPluginTest.java
@@ -26,7 +26,9 @@ import static org.junit.Assert.fail;
import java.lang.reflect.Field;
import java.lang.reflect.Method;
+import java.util.Arrays;
import java.util.Collections;
+import java.util.HashSet;
import java.util.stream.Collectors;
import java.util.stream.Stream;
@@ -36,8 +38,6 @@ import org.apache.tinkerpop.gremlin.structure.io.IoCore;
import org.apache.tinkerpop.gremlin.util.Gremlin;
import org.junit.Test;
-import com.google.common.collect.ImmutableSet;
-
/**
* @author Stephen Mallette (http://stephen.genoprime.com)
*/
@@ -147,12 +147,10 @@ public class ImportGremlinPluginTest {
.fieldsImports(Collections.singletonList(Math.class.getCanonicalName() + "#*")).create();
final DefaultImportCustomizer customizer = (DefaultImportCustomizer) module.getCustomizers().get()[0];
- assertThat(customizer.getFieldImports(), is(ImmutableSet.of(Math.class.getField("PI"), Math.class.getField("E"))));
+ assertThat(customizer.getFieldImports(), is(new HashSet<>(
+ Arrays.asList(Math.class.getField("PI"), Math.class.getField("E")))));
}
-
-
-
@Test
public void shouldThrowExceptionIfInvalidEnumDescriptor() throws Exception {
final String badDescriptor = "T*id";
diff --git a/gremlin-groovy/pom.xml b/gremlin-groovy/pom.xml
index ded8358..b24969f 100644
--- a/gremlin-groovy/pom.xml
+++ b/gremlin-groovy/pom.xml
@@ -32,6 +32,12 @@ limitations under the License.
<version>${project.version}</version>
</dependency>
<dependency>
+ <groupId>org.apache.tinkerpop</groupId>
+ <artifactId>gremlin-annotations</artifactId>
+ <version>${project.version}</version>
+ <optional>true</optional>
+ </dependency>
+ <dependency>
<groupId>org.apache.ivy</groupId>
<artifactId>ivy</artifactId>
<version>2.4.0</version>
@@ -157,6 +163,17 @@ limitations under the License.
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-failsafe-plugin</artifactId>
</plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-compiler-plugin</artifactId>
+ <configuration>
+ <source>1.8</source>
+ <target>1.8</target>
+ <compilerArgs>
+ <arg>-parameters</arg>
+ </compilerArgs>
+ </configuration>
+ </plugin>
</plugins>
</build>
@@ -180,6 +197,17 @@ limitations under the License.
<sourcepath>${pom.basedir}/src/main/java:${project.build.directory}/generated-sources/annotations:${project.build.directory}/generated-sources/groovy-stubs/main</sourcepath>
</configuration>
</plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-compiler-plugin</artifactId>
+ <version>3.8.1</version>
+ <configuration>
+ <release>8</release>
+ <compilerArgs>
+ <arg>-parameters</arg>
+ </compilerArgs>
+ </configuration>
+ </plugin>
</plugins>
</build>
</profile>
diff --git a/pom.xml b/pom.xml
index a3e5b8b..c06aae5 100644
--- a/pom.xml
+++ b/pom.xml
@@ -125,6 +125,7 @@ limitations under the License.
<module>gremlin-language</module>
<module>gremlin-shaded</module>
<module>gremlin-core</module>
+ <module>gremlin-annotations</module>
<module>gremlin-test</module>
<module>gremlin-groovy</module>
<module>tinkergraph-gremlin</module>
@@ -461,7 +462,7 @@ limitations under the License.
</plugins>
<pluginManagement>
<plugins>
- <!-- there is a jdk11 profile that will be enabled if built with that version - these settings will be overriden -->
+ <!-- there is a jdk11 profile that will be enabled if built with that version - these settings will be overridden -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>