From 6dffca791430639ca06dc6f2d9c309e085d8ba32 Mon Sep 17 00:00:00 2001 From: Yuan Liao Date: Mon, 4 Apr 2022 09:36:20 -0700 Subject: [PATCH] Fix "reference to Record is ambiguous" for JDK 16+ Since Java 16, a new java.lang.Record class has been added to the Java SE API. Classes under the java.lang package, including this Record class, are automatically imported in any Java source file. Because this project also has a com.univocity.parsers.common.record.Record interface, when it is being compiled on JDK 16 and above, there would be an ambiguity as to which class/interface to use for the 'Record' type: src/main/java/com/univocity/parsers/common/Context.java:136: error: reference to Record is ambiguous Record toRecord(String[] row); ^ both interface com.univocity.parsers.common.record.Record in com.univocity.parsers.common.record and class java.lang.Record in java.lang match The resolution to this issue is simply to import the Record interface under this project explicitly in every source file using it. Bug: https://github.com/Leo3418/junit-5-ebuild-repo/issues/4 Reported-by: Volkmar W. Pogatzki Signed-off-by: Yuan Liao --- src/main/java/com/univocity/parsers/common/AbstractParser.java | 1 + src/main/java/com/univocity/parsers/common/AbstractWriter.java | 1 + src/main/java/com/univocity/parsers/common/Context.java | 1 + src/main/java/com/univocity/parsers/common/ContextWrapper.java | 1 + src/main/java/com/univocity/parsers/common/DefaultContext.java | 1 + .../java/com/univocity/parsers/common/NoopParsingContext.java | 1 + .../java/com/univocity/parsers/common/ParsingContextWrapper.java | 1 + .../com/univocity/parsers/common/iterators/RecordIterator.java | 1 + src/main/java/com/univocity/parsers/fixed/FixedWidthParser.java | 1 + src/main/java/com/univocity/parsers/fixed/Lookup.java | 1 + 10 files changed, 10 insertions(+) diff --git a/src/main/java/com/univocity/parsers/common/AbstractParser.java b/src/main/java/com/univocity/parsers/common/AbstractParser.java index 42191ad..6dd4dac 100644 --- a/src/main/java/com/univocity/parsers/common/AbstractParser.java +++ b/src/main/java/com/univocity/parsers/common/AbstractParser.java @@ -20,6 +20,7 @@ import com.univocity.parsers.common.input.*; import com.univocity.parsers.common.iterators.*; import com.univocity.parsers.common.processor.*; import com.univocity.parsers.common.processor.core.*; +import com.univocity.parsers.common.record.Record; import com.univocity.parsers.common.record.*; import java.io.*; diff --git a/src/main/java/com/univocity/parsers/common/AbstractWriter.java b/src/main/java/com/univocity/parsers/common/AbstractWriter.java index 6a19562..d7a5207 100644 --- a/src/main/java/com/univocity/parsers/common/AbstractWriter.java +++ b/src/main/java/com/univocity/parsers/common/AbstractWriter.java @@ -18,6 +18,7 @@ package com.univocity.parsers.common; import com.univocity.parsers.common.fields.*; import com.univocity.parsers.common.input.*; import com.univocity.parsers.common.processor.*; +import com.univocity.parsers.common.record.Record; import com.univocity.parsers.common.record.*; import com.univocity.parsers.fixed.*; diff --git a/src/main/java/com/univocity/parsers/common/Context.java b/src/main/java/com/univocity/parsers/common/Context.java index d0adf5f..f3b28c9 100644 --- a/src/main/java/com/univocity/parsers/common/Context.java +++ b/src/main/java/com/univocity/parsers/common/Context.java @@ -15,6 +15,7 @@ ******************************************************************************/ package com.univocity.parsers.common; +import com.univocity.parsers.common.record.Record; import com.univocity.parsers.common.record.*; /** diff --git a/src/main/java/com/univocity/parsers/common/ContextWrapper.java b/src/main/java/com/univocity/parsers/common/ContextWrapper.java index bee87e8..c338895 100644 --- a/src/main/java/com/univocity/parsers/common/ContextWrapper.java +++ b/src/main/java/com/univocity/parsers/common/ContextWrapper.java @@ -15,6 +15,7 @@ ******************************************************************************/ package com.univocity.parsers.common; +import com.univocity.parsers.common.record.Record; import com.univocity.parsers.common.record.*; /** diff --git a/src/main/java/com/univocity/parsers/common/DefaultContext.java b/src/main/java/com/univocity/parsers/common/DefaultContext.java index 11ea961..7346e64 100644 --- a/src/main/java/com/univocity/parsers/common/DefaultContext.java +++ b/src/main/java/com/univocity/parsers/common/DefaultContext.java @@ -15,6 +15,7 @@ */ package com.univocity.parsers.common; +import com.univocity.parsers.common.record.Record; import com.univocity.parsers.common.record.*; /** diff --git a/src/main/java/com/univocity/parsers/common/NoopParsingContext.java b/src/main/java/com/univocity/parsers/common/NoopParsingContext.java index fe1f07d..79d8787 100644 --- a/src/main/java/com/univocity/parsers/common/NoopParsingContext.java +++ b/src/main/java/com/univocity/parsers/common/NoopParsingContext.java @@ -15,6 +15,7 @@ ******************************************************************************/ package com.univocity.parsers.common; +import com.univocity.parsers.common.record.Record; import com.univocity.parsers.common.record.*; import java.util.*; diff --git a/src/main/java/com/univocity/parsers/common/ParsingContextWrapper.java b/src/main/java/com/univocity/parsers/common/ParsingContextWrapper.java index 20a59d8..e8b4f9d 100644 --- a/src/main/java/com/univocity/parsers/common/ParsingContextWrapper.java +++ b/src/main/java/com/univocity/parsers/common/ParsingContextWrapper.java @@ -15,6 +15,7 @@ */ package com.univocity.parsers.common; +import com.univocity.parsers.common.record.Record; import com.univocity.parsers.common.record.*; import java.util.*; diff --git a/src/main/java/com/univocity/parsers/common/iterators/RecordIterator.java b/src/main/java/com/univocity/parsers/common/iterators/RecordIterator.java index 01b22cb..1620205 100644 --- a/src/main/java/com/univocity/parsers/common/iterators/RecordIterator.java +++ b/src/main/java/com/univocity/parsers/common/iterators/RecordIterator.java @@ -16,6 +16,7 @@ package com.univocity.parsers.common.iterators; import com.univocity.parsers.common.*; +import com.univocity.parsers.common.record.Record; import com.univocity.parsers.common.record.*; import java.io.*; diff --git a/src/main/java/com/univocity/parsers/fixed/FixedWidthParser.java b/src/main/java/com/univocity/parsers/fixed/FixedWidthParser.java index b38bc99..25285eb 100644 --- a/src/main/java/com/univocity/parsers/fixed/FixedWidthParser.java +++ b/src/main/java/com/univocity/parsers/fixed/FixedWidthParser.java @@ -17,6 +17,7 @@ package com.univocity.parsers.fixed; import com.univocity.parsers.common.*; import com.univocity.parsers.common.input.*; +import com.univocity.parsers.common.record.Record; import com.univocity.parsers.common.record.*; /** diff --git a/src/main/java/com/univocity/parsers/fixed/Lookup.java b/src/main/java/com/univocity/parsers/fixed/Lookup.java index 1aeff0d..bcf0f98 100644 --- a/src/main/java/com/univocity/parsers/fixed/Lookup.java +++ b/src/main/java/com/univocity/parsers/fixed/Lookup.java @@ -16,6 +16,7 @@ package com.univocity.parsers.fixed; import com.univocity.parsers.common.*; +import com.univocity.parsers.common.record.Record; import com.univocity.parsers.common.record.*; import java.util.*; -- 2.35.1