Tony Torralba created HIVE-26152: ------------------------------------ Summary: Compilation fails with Maven 3.8.5 Key: HIVE-26152 URL: https://issues.apache.org/jira/browse/HIVE-26152 Project: Hive Issue Type: Bug Affects Versions: 3.1.3 Reporter: Tony Torralba
When trying to build Hive with Maven 3.8.5 on latest {{{}master{}}}, the build fails because of a name clash in a class between {{kyro4}} and {{{}kyro5{}}}: {code:java} [ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.8.1:compile (default-compile) on project hive-kryo-registrator: Compilation failure: Compilation failure: [ERROR] /tmp/hive/kryo-registrator/src/main/java/org/apache/hive/spark/HiveKryoRegistrator.java:[41,18] org.apache.hive.spark.HiveKryoRegistrator.HiveKeySerializer is not abstract and does not override abstract method read(com.esotericsoftware.kryo.Kryo,com.esotericsoftware.kryo.io.Input,java.lang.Class<org.apache.hadoop.hive.ql.io.HiveKey>) in com.esotericsoftware.kryo.Serializer[ERROR] /tmp/hive/kryo-registrator/src/main/java/org/apache/hive/spark/HiveKryoRegistrator.java:[49,20] name clash: read(com.esotericsoftware.kryo.Kryo,com.esotericsoftware.kryo.io.Input,java.lang.Class<? extends org.apache.hadoop.hive.ql.io.HiveKey>) in org.apache.hive.spark.HiveKryoRegistrator.HiveKeySerializer and read(com.esotericsoftware.kryo.Kryo,com.esotericsoftware.kryo.io.Input,java.lang.Class<T>) in com.esotericsoftware.kryo.Serializer have the same erasure, yet neither overrides the other[ERROR] /tmp/hive/kryo-registrator/src/main/java/org/apache/hive/spark/HiveKryoRegistrator.java:[57,10] org.apache.hive.spark.HiveKryoRegistrator.BytesWritableSerializer is not abstract and does not override abstract method read(com.esotericsoftware.kryo.Kryo,com.esotericsoftware.kryo.io.Input,java.lang.Class<org.apache.hadoop.io.BytesWritable>) in com.esotericsoftware.kryo.Serializer[ERROR] /tmp/hive/kryo-registrator/src/main/java/org/apache/hive/spark/HiveKryoRegistrator.java:[64,26] name clash: read(com.esotericsoftware.kryo.Kryo,com.esotericsoftware.kryo.io.Input,java.lang.Class<? extends org.apache.hadoop.io.BytesWritable>) in org.apache.hive.spark.HiveKryoRegistrator.BytesWritableSerializer and read(com.esotericsoftware.kryo.Kryo,com.esotericsoftware.kryo.io.Input,java.lang.Class<T>) in com.esotericsoftware.kryo.Serializer have the same erasure, yet neither overrides the other [ERROR] /tmp/hive/kryo-registrator/src/main/java/org/apache/hive/spark/NoHashCodeKryoSerializer.java:[51,18] org.apache.hive.spark.NoHashCodeKryoSerializer.HiveKeySerializer is not abstract and does not override abstract method read(com.esotericsoftware.kryo.Kryo,com.esotericsoftware.kryo.io.Input,java.lang.Class<org.apache.hadoop.hive.ql.io.HiveKey>) in com.esotericsoftware.kryo.Serializer[ERROR] /tmp/hive/kryo-registrator/src/main/java/org/apache/hive/spark/NoHashCodeKryoSerializer.java:[58,20] name clash: read(com.esotericsoftware.kryo.Kryo,com.esotericsoftware.kryo.io.Input,java.lang.Class<? extends org.apache.hadoop.hive.ql.io.HiveKey>) in org.apache.hive.spark.NoHashCodeKryoSerializer.HiveKeySerializer and read(com.esotericsoftware.kryo.Kryo,com.esotericsoftware.kryo.io.Input,java.lang.Class<T>) in com.esotericsoftware.kryo.Serializer have the same erasure, yet neither overrides the other{code} Build command: {code:java} mvn clean package -DskipTests -Dmaven.javadoc.skip=true -Drat.skip=true {code} (Had to skip the RAT check because it complained about a lot of files not having approved licenses). -- This message was sent by Atlassian Jira (v8.20.7#820007)