[ 
https://issues.apache.org/jira/browse/TINKERPOP-2076?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16973898#comment-16973898
 ] 

Robert Dale commented on TINKERPOP-2076:
----------------------------------------

re: 4. images can co-exist for multiple versions through tags.  currently what 
we see are three images:
{noformat}
tinkerpop:hadoop-2.7.7
tinkerpop:base
ubuntu:xenial
{noformat}
 
 {{ubuntu:xenial}} is obviously the ubuntu base image

{{base}} is the big heavy-weight. it builds on ubuntu and adds updates, 
language compilers, and many other things. This is the thing you really don't 
want to have to rebuild.  Looks like {{dotnet}} is the largest consumer of 
space.

{{hadoop-2.7.7}} is much smaller, containing only the hadoop install.  Trivial 
to rebuild with a newer hadoop version.

So, all we need to do is come up with some new tags for images we need to 
co-exist. We could add TinkerPop versioning or divide it by jdk version 
(similar to hadoop version).

TinkerPop Versioning:
{noformat}
tinkerpop:base-3.3
tinkerpop:base-3.5
{noformat}
such that {{base-3.3}} is compat with 3.3, 3.4. {{base-3.5}} is compat with 
3.5+ (and until some high version exists).

JDK Versioning:
{noformat}
tinkerpop:base-jdk11
tinkerpop:base-jdk8
{noformat}

Self-explanatory. Technically, we don't have to make a {{base-jdk8}}. we can 
leave the existing {{base}} alone or just retag it if we really want to migrate 
existing images to the new naming scheme.

The only thing that's less clear is how do we want to handle the hadoop image.  
{{hadoop-2.7.7_jdk11}}?  Do we even still need this? Does the version change 
enough to warrant it?  Or do we want to move more, potentially changing version 
things into it and give it a more general name?

Anyway, lots of options on how to reorganize dependencies, version, and tag 
them.


> Build with Java 11
> ------------------
>
>                 Key: TINKERPOP-2076
>                 URL: https://issues.apache.org/jira/browse/TINKERPOP-2076
>             Project: TinkerPop
>          Issue Type: Improvement
>          Components: build-release
>    Affects Versions: 3.3.4
>         Environment: $ java --version 
> java 11 2018-09-25 
> Java(TM) SE Runtime Environment 18.9 (build 11+28) 
> Java HotSpot(TM) 64-Bit Server VM 18.9 (build 11+28, mixed mode)
>            Reporter: Steve Strassmann
>            Assignee: Stephen Mallette
>            Priority: Major
>             Fix For: 3.5.0
>
>
> I cannot build TinkerPop with a current (v11) Java version.
> On the gremlin-users Google group, Robert Dale suggests using Java 8, but 
> that is deprecated. Recommended: support current Java versions. Stephen 
> Mallette says "we need to start worrying about such things."
> Oracle [says Java 8 is 
> deprecated|https://www.oracle.com/technetwork/java/javase/overview/index.html]:
> {quote}{color:#d04437}[End of Public Updates for Oracle JDK 
> 8|https://www.oracle.com/technetwork/java/javase/eol-135779.html]{color}
>  Oracle will not post further updates of Java SE 8 to its public download 
> sites for commercial use after January 2019.
> {quote}
>  
>  See issue posted in Gremlin-users Google Group: 
>  
> [https://groups.google.com/forum/?utm_medium=email&utm_source=footer#!topic/gremlin-users/Kgnq4BkrZXQ]
> {{unable to build Tinkerpop from master with mvn clean install. }}
>   
>  The error appears to be
>     An API incompatibility was encountered while executing 
> org.apache.maven.plugins:maven-enforcer-plugin:1.4.1:enforce: 
> java.lang.ExceptionInInitializerError: null
> {code:java}
> $ git clone https://github.com/apache/tinkerpop.git 
> $ git checkout master  
> $ mvn --version
> Apache Maven 3.5.4 (1edded0938998edf8bf061f1ceb3cfdeccf443fe; 
> 2018-06-17T14:33:14-04:00)
> Maven home: /opt/maven
> Java version: 11, vendor: Oracle Corporation, runtime: 
> /Library/Java/JavaVirtualMachines/jdk-11.jdk/Contents/Home
> Default locale: en_US, platform encoding: UTF-8
> OS name: "mac os x", version: "10.13.6", arch: "x86_64", family: "mac"
> {code}
>  
>   
> {code:java}
> $ mvn clean install
> [INFO] Scanning for projects...
> [WARNING] The project org.apache.tinkerpop:tinkerpop:pom:3.4.0-SNAPSHOT uses 
> prerequisites which is only intended for maven-plugin projects but not for 
> non maven-plugin projects. For such purposes you should use the 
> maven-enforcer-plugin. See 
> https://maven.apache.org/enforcer/enforcer-rules/requireMavenVersion.html
> [INFO] 
> ------------------------------------------------------------------------
> [INFO] Reactor Build Order:
> [INFO] 
> [INFO] Apache TinkerPop                                                   
> [pom]
> [INFO] Apache TinkerPop :: Gremlin Shaded                                 
> [jar]
> [INFO] Apache TinkerPop :: Gremlin Core                                   
> [jar]
> [INFO] Apache TinkerPop :: Gremlin Test                                   
> [jar]
> [INFO] Apache TinkerPop :: TinkerGraph Gremlin                            
> [jar]
> [INFO] Apache TinkerPop :: Gremlin Groovy                                 
> [jar]
> [INFO] Apache TinkerPop :: Gremlin Driver                                 
> [jar]
> [INFO] Apache TinkerPop :: Neo4j Gremlin                                  
> [jar]
> [INFO] Apache TinkerPop :: Gremlin Server                                 
> [jar]
> [INFO] Apache TinkerPop :: Gremlin Javascript                             
> [jar]
> [INFO] Apache TinkerPop :: Gremlin Python                                 
> [jar]
> [INFO] Apache TinkerPop :: Gremlin.Net                                    
> [pom]
> [INFO] Apache TinkerPop :: Gremlin.Net - Source                           
> [pom]
> [INFO] Apache TinkerPop :: Gremlin.Net - Tests                            
> [pom]
> [INFO] Apache TinkerPop :: Hadoop Gremlin                                 
> [jar]
> [INFO] Apache TinkerPop :: Spark Gremlin                                  
> [jar]
> [INFO] Apache TinkerPop :: SPARQL Gremlin                                 
> [jar]
> [INFO] Apache TinkerPop :: Gremlin Console                                
> [jar]
> [INFO] Apache TinkerPop :: Gremlin Archetype                              
> [pom]
> [INFO] Apache TinkerPop :: Archetype - TinkerGraph                        
> [jar]
> [INFO] Apache TinkerPop :: Archetype - Server                             
> [jar]
> [INFO] Apache TinkerPop :: Archetype - DSL                                
> [jar]
> [INFO] Apache TinkerPop :: Gremlin Tools                                  
> [pom]
> [INFO] Apache TinkerPop :: Gremlin Benchmark                              
> [jar]
> [INFO] Apache TinkerPop :: Gremlin Coverage                               
> [jar]
> [INFO] Apache TinkerPop :: Gremlin IO Test                                
> [jar]
> [INFO] 
> [INFO] -------------------< org.apache.tinkerpop:tinkerpop 
> >-------------------
> [INFO] Building Apache TinkerPop 3.4.0-SNAPSHOT                          
> [1/26]
> [INFO] --------------------------------[ pom 
> ]---------------------------------
> Downloading from central: 
> https://repo.maven.apache.org/maven2/org/apache/maven/plugins/maven-site-plugin/3.7/maven-site-plugin-3.7.pom
> Downloaded from central: 
> https://repo.maven.apache.org/maven2/org/apache/maven/plugins/maven-site-plugin/3.7/maven-site-plugin-3.7.pom
>  (19 kB at 42 kB/s)
> Downloading from central: 
> https://repo.maven.apache.org/maven2/org/apache/maven/plugins/maven-site-plugin/3.7/maven-site-plugin-3.7.jar
> Downloaded from central: 
> https://repo.maven.apache.org/maven2/org/apache/maven/plugins/maven-site-plugin/3.7/maven-site-plugin-3.7.jar
>  (134 kB at 1.0 MB/s)
> Downloading from central: 
> https://repo.maven.apache.org/maven2/org/apache/maven/plugins/maven-clean-plugin/3.0.0/maven-clean-plugin-3.0.0.pom
> Downloaded from central: 
> https://repo.maven.apache.org/maven2/org/apache/maven/plugins/maven-clean-plugin/3.0.0/maven-clean-plugin-3.0.0.pom
>  (4.8 kB at 73 kB/s)
> Downloading from central: 
> https://repo.maven.apache.org/maven2/org/apache/maven/plugins/maven-clean-plugin/3.0.0/maven-clean-plugin-3.0.0.jar
> Downloaded from central: 
> https://repo.maven.apache.org/maven2/org/apache/maven/plugins/maven-clean-plugin/3.0.0/maven-clean-plugin-3.0.0.jar
>  (31 kB at 398 kB/s)
> [INFO] 
> [INFO] --- maven-clean-plugin:3.0.0:clean (default-clean) @ tinkerpop ---
> Downloading from central: 
> https://repo.maven.apache.org/maven2/org/apache/maven/shared/maven-shared-utils/3.0.0/maven-shared-utils-3.0.0.pom
> Downloaded from central: 
> https://repo.maven.apache.org/maven2/org/apache/maven/shared/maven-shared-utils/3.0.0/maven-shared-utils-3.0.0.pom
>  (5.6 kB at 92 kB/s)
> Downloading from central: 
> https://repo.maven.apache.org/maven2/org/apache/maven/shared/maven-shared-components/21/maven-shared-components-21.pom
> Downloaded from central: 
> https://repo.maven.apache.org/maven2/org/apache/maven/shared/maven-shared-components/21/maven-shared-components-21.pom
>  (5.1 kB at 90 kB/s)
> Downloading from central: 
> https://repo.maven.apache.org/maven2/org/apache/maven/maven-parent/25/maven-parent-25.pom
> Downloaded from central: 
> https://repo.maven.apache.org/maven2/org/apache/maven/maven-parent/25/maven-parent-25.pom
>  (37 kB at 474 kB/s)
> Downloading from central: 
> https://repo.maven.apache.org/maven2/org/apache/apache/15/apache-15.pom
> Downloaded from central: 
> https://repo.maven.apache.org/maven2/org/apache/apache/15/apache-15.pom (15 
> kB at 224 kB/s)
> Downloading from central: 
> https://repo.maven.apache.org/maven2/commons-io/commons-io/2.4/commons-io-2.4.pom
> Downloaded from central: 
> https://repo.maven.apache.org/maven2/commons-io/commons-io/2.4/commons-io-2.4.pom
>  (10 kB at 159 kB/s)
> Downloading from central: 
> https://repo.maven.apache.org/maven2/org/apache/commons/commons-parent/25/commons-parent-25.pom
> Downloaded from central: 
> https://repo.maven.apache.org/maven2/org/apache/commons/commons-parent/25/commons-parent-25.pom
>  (48 kB at 653 kB/s)
> Downloading from central: 
> https://repo.maven.apache.org/maven2/org/apache/apache/9/apache-9.pom
> Downloaded from central: 
> https://repo.maven.apache.org/maven2/org/apache/apache/9/apache-9.pom (15 kB 
> at 233 kB/s)
> Downloading from central: 
> https://repo.maven.apache.org/maven2/com/google/code/findbugs/jsr305/2.0.1/jsr305-2.0.1.pom
> Downloaded from central: 
> https://repo.maven.apache.org/maven2/com/google/code/findbugs/jsr305/2.0.1/jsr305-2.0.1.pom
>  (965 B at 16 kB/s)
> Downloading from central: 
> https://repo.maven.apache.org/maven2/org/apache/maven/shared/maven-shared-utils/3.0.0/maven-shared-utils-3.0.0.jar
> Downloading from central: 
> https://repo.maven.apache.org/maven2/com/google/code/findbugs/jsr305/2.0.1/jsr305-2.0.1.jar
> Downloading from central: 
> https://repo.maven.apache.org/maven2/commons-io/commons-io/2.4/commons-io-2.4.jar
> Downloaded from central: 
> https://repo.maven.apache.org/maven2/org/apache/maven/shared/maven-shared-utils/3.0.0/maven-shared-utils-3.0.0.jar
>  (155 kB at 1.3 MB/s)
> Downloaded from central: 
> https://repo.maven.apache.org/maven2/com/google/code/findbugs/jsr305/2.0.1/jsr305-2.0.1.jar
>  (32 kB at 176 kB/s)
> Downloaded from central: 
> https://repo.maven.apache.org/maven2/commons-io/commons-io/2.4/commons-io-2.4.jar
>  (185 kB at 673 kB/s)
> [INFO] 
> [INFO] --- maven-enforcer-plugin:1.4.1:enforce (enforce-maven-version) @ 
> tinkerpop ---
> [INFO] 
> [INFO] --- maven-enforcer-plugin:1.4.1:enforce (enforce-all) @ tinkerpop ---
> [INFO] 
> ------------------------------------------------------------------------
> [INFO] Reactor Summary:
> [INFO] 
> [INFO] Apache TinkerPop 3.4.0-SNAPSHOT .................... FAILURE [  2.698 
> s]
> [INFO] Apache TinkerPop :: Gremlin Shaded ................. SKIPPED
> [INFO] Apache TinkerPop :: Gremlin Core ................... SKIPPED
> [INFO] Apache TinkerPop :: Gremlin Test ................... SKIPPED
> [INFO] Apache TinkerPop :: TinkerGraph Gremlin ............ SKIPPED
> [INFO] Apache TinkerPop :: Gremlin Groovy ................. SKIPPED
> [INFO] Apache TinkerPop :: Gremlin Driver ................. SKIPPED
> [INFO] Apache TinkerPop :: Neo4j Gremlin .................. SKIPPED
> [INFO] Apache TinkerPop :: Gremlin Server ................. SKIPPED
> [INFO] Apache TinkerPop :: Gremlin Javascript ............. SKIPPED
> [INFO] Apache TinkerPop :: Gremlin Python ................. SKIPPED
> [INFO] Apache TinkerPop :: Gremlin.Net .................... SKIPPED
> [INFO] Apache TinkerPop :: Gremlin.Net - Source ........... SKIPPED
> [INFO] Apache TinkerPop :: Gremlin.Net - Tests ............ SKIPPED
> [INFO] Apache TinkerPop :: Hadoop Gremlin ................. SKIPPED
> [INFO] Apache TinkerPop :: Spark Gremlin .................. SKIPPED
> [INFO] Apache TinkerPop :: SPARQL Gremlin ................. SKIPPED
> [INFO] Apache TinkerPop :: Gremlin Console ................ SKIPPED
> [INFO] Apache TinkerPop :: Gremlin Archetype .............. SKIPPED
> [INFO] Apache TinkerPop :: Archetype - TinkerGraph ........ SKIPPED
> [INFO] Apache TinkerPop :: Archetype - Server ............. SKIPPED
> [INFO] Apache TinkerPop :: Archetype - DSL ................ SKIPPED
> [INFO] Apache TinkerPop :: Gremlin Tools .................. SKIPPED
> [INFO] Apache TinkerPop :: Gremlin Benchmark .............. SKIPPED
> [INFO] Apache TinkerPop :: Gremlin Coverage ............... SKIPPED
> [INFO] Apache TinkerPop :: Gremlin IO Test 3.4.0-SNAPSHOT . SKIPPED
> [INFO] 
> ------------------------------------------------------------------------
> [INFO] BUILD FAILURE
> [INFO] 
> ------------------------------------------------------------------------
> [INFO] Total time: 3.474 s
> [INFO] Finished at: 2018-10-18T09:30:15-04:00
> [INFO] 
> ------------------------------------------------------------------------
> [ERROR] Failed to execute goal 
> org.apache.maven.plugins:maven-enforcer-plugin:1.4.1:enforce (enforce-all) on 
> project tinkerpop: Execution enforce-all of goal 
> org.apache.maven.plugins:maven-enforcer-plugin:1.4.1:enforce failed: An API 
> incompatibility was encountered while executing 
> org.apache.maven.plugins:maven-enforcer-plugin:1.4.1:enforce: 
> java.lang.ExceptionInInitializerError: null
> [ERROR] -----------------------------------------------------
> [ERROR] realm =    plugin>org.apache.maven.plugins:maven-enforcer-plugin:1.4.1
> [ERROR] strategy = org.codehaus.plexus.classworlds.strategy.SelfFirstStrategy
> [ERROR] urls[0] = 
> file:/Users/sstrassmann/.m2/repository/org/apache/maven/plugins/maven-enforcer-plugin/1.4.1/maven-enforcer-plugin-1.4.1.jar
> [ERROR] urls[1] = 
> file:/Users/sstrassmann/.m2/repository/backport-util-concurrent/backport-util-concurrent/3.1/backport-util-concurrent-3.1.jar
> [ERROR] urls[2] = 
> file:/Users/sstrassmann/.m2/repository/org/codehaus/plexus/plexus-interpolation/1.11/plexus-interpolation-1.11.jar
> [ERROR] urls[3] = 
> file:/Users/sstrassmann/.m2/repository/org/slf4j/slf4j-jdk14/1.5.6/slf4j-jdk14-1.5.6.jar
> [ERROR] urls[4] = 
> file:/Users/sstrassmann/.m2/repository/org/slf4j/jcl-over-slf4j/1.5.6/jcl-over-slf4j-1.5.6.jar
> [ERROR] urls[5] = 
> file:/Users/sstrassmann/.m2/repository/org/apache/maven/reporting/maven-reporting-api/2.2.1/maven-reporting-api-2.2.1.jar
> [ERROR] urls[6] = 
> file:/Users/sstrassmann/.m2/repository/org/apache/maven/doxia/doxia-sink-api/1.1/doxia-sink-api-1.1.jar
> [ERROR] urls[7] = 
> file:/Users/sstrassmann/.m2/repository/org/apache/maven/doxia/doxia-logging-api/1.1/doxia-logging-api-1.1.jar
> [ERROR] urls[8] = 
> file:/Users/sstrassmann/.m2/repository/commons-cli/commons-cli/1.2/commons-cli-1.2.jar
> [ERROR] urls[9] = 
> file:/Users/sstrassmann/.m2/repository/org/codehaus/plexus/plexus-interactivity-api/1.0-alpha-4/plexus-interactivity-api-1.0-alpha-4.jar
> [ERROR] urls[10] = 
> file:/Users/sstrassmann/.m2/repository/org/sonatype/plexus/plexus-sec-dispatcher/1.3/plexus-sec-dispatcher-1.3.jar
> [ERROR] urls[11] = 
> file:/Users/sstrassmann/.m2/repository/org/sonatype/plexus/plexus-cipher/1.4/plexus-cipher-1.4.jar
> [ERROR] urls[12] = 
> file:/Users/sstrassmann/.m2/repository/org/codehaus/plexus/plexus-utils/3.0.22/plexus-utils-3.0.22.jar
> [ERROR] urls[13] = 
> file:/Users/sstrassmann/.m2/repository/commons-lang/commons-lang/2.3/commons-lang-2.3.jar
> [ERROR] urls[14] = 
> file:/Users/sstrassmann/.m2/repository/org/apache/maven/enforcer/enforcer-api/1.4.1/enforcer-api-1.4.1.jar
> [ERROR] urls[15] = 
> file:/Users/sstrassmann/.m2/repository/org/apache/maven/enforcer/enforcer-rules/1.4.1/enforcer-rules-1.4.1.jar
> [ERROR] urls[16] = 
> file:/Users/sstrassmann/.m2/repository/org/apache/maven/shared/maven-common-artifact-filters/1.4/maven-common-artifact-filters-1.4.jar
> [ERROR] urls[17] = 
> file:/Users/sstrassmann/.m2/repository/org/beanshell/bsh/2.0b4/bsh-2.0b4.jar
> [ERROR] urls[18] = 
> file:/Users/sstrassmann/.m2/repository/org/apache/maven/shared/maven-dependency-tree/2.2/maven-dependency-tree-2.2.jar
> [ERROR] urls[19] = 
> file:/Users/sstrassmann/.m2/repository/org/codehaus/plexus/plexus-component-annotations/1.5.5/plexus-component-annotations-1.5.5.jar
> [ERROR] urls[20] = 
> file:/Users/sstrassmann/.m2/repository/org/eclipse/aether/aether-util/0.9.0.M2/aether-util-0.9.0.M2.jar
> [ERROR] urls[21] = 
> file:/Users/sstrassmann/.m2/repository/org/codehaus/plexus/plexus-i18n/1.0-beta-6/plexus-i18n-1.0-beta-6.jar
> [ERROR] urls[22] = 
> file:/Users/sstrassmann/.m2/repository/org/apache/maven/plugin-testing/maven-plugin-testing-harness/1.3/maven-plugin-testing-harness-1.3.jar
> [ERROR] urls[23] = 
> file:/Users/sstrassmann/.m2/repository/org/codehaus/plexus/plexus-archiver/2.2/plexus-archiver-2.2.jar
> [ERROR] urls[24] = 
> file:/Users/sstrassmann/.m2/repository/org/codehaus/plexus/plexus-io/2.0.4/plexus-io-2.0.4.jar
> [ERROR] urls[25] = 
> file:/Users/sstrassmann/.m2/repository/junit/junit/4.11/junit-4.11.jar
> [ERROR] urls[26] = 
> file:/Users/sstrassmann/.m2/repository/org/hamcrest/hamcrest-core/1.3/hamcrest-core-1.3.jar
> [ERROR] Number of foreign imports: 1
> [ERROR] import: Entry[import  from realm ClassRealm[maven.api, parent: null]]
> [ERROR] 
> [ERROR] -----------------------------------------------------
> [ERROR] : begin 0, end 3, length 2
> [ERROR] -> [Help 1]
> [ERROR] 
> [ERROR] To see the full stack trace of the errors, re-run Maven with the -e 
> switch.
> [ERROR] Re-run Maven using the -X switch to enable full debug logging.
> [ERROR] 
> [ERROR] For more information about the errors and possible solutions, please 
> read the following articles:
> [ERROR] [Help 1] 
> http://cwiki.apache.org/confluence/display/MAVEN/PluginContainerException
> {code}
>  



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to