jackson-dataformat-csv不会忽略未知属性

尝试使用jackson-dataformat-csv解析.csv文件。 文件包含很多与我的程序无关的列。

试图对我的数据类使用@JsonIgnoreProperties(ignoreUnknown = true)和csvMapper.disable(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES),但都不起作用,应用程序抛出异常:

com.fasterxml.jackson.databind.RuntimeJsonMappingException: Too many entries: expected at most 2 (value #2 (17 chars) "policy_issue_date") at [Source: (com.fasterxml.jackson.dataformat.csv.impl.UTF8Reader); line: 1, column: 37] at com.fasterxml.jackson.databind.MappingIterator.next(MappingIterator.java:194) at pl.polins.readers.oc.OcPolicyCsvReader.readNext(OcPolicyCsvReader.kt:25) at pl.polins.readers.oc.OcPolicyCsvReaderTest.should read PolicyCsv from .csv file(OcPolicyCsvReaderTest.groovy:19) Caused by: com.fasterxml.jackson.dataformat.csv.CsvMappingException: Too many entries: expected at most 2 (value #2 (17 chars) "policy_issue_date") at [Source: (com.fasterxml.jackson.dataformat.csv.impl.UTF8Reader); line: 1, column: 37] at com.fasterxml.jackson.dataformat.csv.CsvMappingException.from(CsvMappingException.java:23) at com.fasterxml.jackson.dataformat.csv.CsvParser._reportCsvMappingError(CsvParser.java:1210) at com.fasterxml.jackson.dataformat.csv.CsvParser._handleExtraColumn(CsvParser.java:965) at com.fasterxml.jackson.dataformat.csv.CsvParser._handleNextEntry(CsvParser.java:826) at com.fasterxml.jackson.dataformat.csv.CsvParser.nextToken(CsvParser.java:580) at com.fasterxml.jackson.databind.deser.BeanDeserializer._deserializeUsingPropertyBased(BeanDeserializer.java:418) at com.fasterxml.jackson.databind.deser.BeanDeserializerBase.deserializeFromObjectUsingNonDefault(BeanDeserializerBase.java:1266) at com.fasterxml.jackson.databind.deser.BeanDeserializer.deserializeFromObject(BeanDeserializer.java:325) at com.fasterxml.jackson.databind.deser.BeanDeserializer.deserialize(BeanDeserializer.java:159) at com.fasterxml.jackson.databind.MappingIterator.nextValue(MappingIterator.java:277) at com.fasterxml.jackson.databind.MappingIterator.next(MappingIterator.java:192) ... 2 more 

有什么解决方案可以忽略csv中不需要的列吗?

找到解决方案

 csvMapper.enable(CsvParser.Feature.IGNORE_TRAILING_UNMAPPABLE)