Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/65.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
这是什么意思;此方法不推荐使用,因为用户应使用Java 5约定;?_Java_Conventions_Opencsv - Fatal编程技术网

这是什么意思;此方法不推荐使用,因为用户应使用Java 5约定;?

这是什么意思;此方法不推荐使用,因为用户应使用Java 5约定;?,java,conventions,opencsv,Java,Conventions,Opencsv,我使用的是opencvs库的“ColumnPositionMappingStrategy”类。 此类的方法已弃用方法setType(类类型)以及注释中的“此方法已弃用,因为用户应使用Java 5约定” 据我所知,我必须使用泛型而不是setType,如: ColumnPositionMappingStrategy<MyClass> mappingStrategy = new ColumnPositionMappingStrategy<>(); 错误: java.lang.

我使用的是
opencvs
库的“ColumnPositionMappingStrategy”类。 此类的
方法已弃用
方法
setType(类类型)
以及注释中的“此方法已弃用,因为用户应使用Java 5约定”

据我所知,我必须使用泛型而不是setType,如:

ColumnPositionMappingStrategy<MyClass> mappingStrategy = new ColumnPositionMappingStrategy<>();
错误:

java.lang.RuntimeException: Error parsing CSV!
at com.opencsv.bean.CsvToBean.parse(CsvToBean.java:95)
at com.opencsv.bean.CsvToBean.parse(CsvToBean.java:75)
at csv_import.ReadCsvFile.readRecordData(ReadCsvFile.java:40)
at app.Application.main(Application.java:30)

Caused by: java.lang.NullPointerException
at com.opencsv.bean.HeaderColumnNameMappingStrategy.createBean(HeaderColumnNameMappingStrategy.java:170)
at com.opencsv.bean.CsvToBean.processLine(CsvToBean.java:117)
at com.opencsv.bean.CsvToBean.processLine(CsvToBean.java:101)
at com.opencsv.bean.CsvToBean.parse(CsvToBean.java:91)
... 3 more

要解决此问题,我必须做些什么?

实现依赖于类型,方法是调用:

public T createBean() throws InstantiationException, IllegalAccessException {
  return type.newInstance();
}

像这样的一些注释-
TODO重构此类以使用T而不是getType。
-意味着
@Deprecation
注释使用得太早了-因为没有其他可用的用法。

实现依赖于类型,方法是调用:

public T createBean() throws InstantiationException, IllegalAccessException {
  return type.newInstance();
}

像这样的一些注释-
要重构这个类以使用T而不是getType。
-意味着
@Deprecation
注释使用得太早了-因为没有其他可用的用法。

从何处获得
NullPointerException
?另一种计算“该做什么”的方法。。。转向该类的源代码;看看“setType()”到底在做什么。然后检查该类的接口,寻找“相同”的替代方法。@PaulRuane请查看问题中的错误。@EddyG
HeaderColumnNameMappingStrategy
具有使用
class type
实例化该类的方法createBean,
type
是由不推荐使用的
setType
方法设置的。从哪里可以获得
NullPointerException
?另一种计算“要做什么”的方法。。。转向该类的源代码;看看“setType()”到底在做什么。然后检查该类的接口,寻找“相同”的替代方法。@PaulRuane请查看问题中的错误。@EddyG
HeaderColumnNameMappingStrategy
具有使用
class type
实例化该类的方法createBean,
type
由已弃用的
setType
方法设置。