2017-01-20 13 views
0

コードを解決する方法はありますか? -Javapoetでは、なぜ "ClassName.bestGuess(" int ")"エラーが発生しますか?

for (FieldInfo fieldInfo : info.getResult()) { 
    result.addField(FieldSpec.builder(ClassName.bestGuess(fieldInfo.getClazz()),fieldInfo.getName()) 
      .addModifiers(Modifier.PRIVATE) 
      .build() 
    ); 
} 

fieldInfo.getClazz()戻っ "INT"、 "フロート"、コードが

java.lang.IllegalArgumentExceptionがようなエラーをスローします:int型

のための推測を行うことができませんでした
+0

ここで 'info 'とは何かを共有でき、' FieldInfo'が 'sun.reflect.FieldInfo'であることを確認できますか? – nullpointer

答えて

0

Javaの型システムには、クラス、配列、プリミティブ、パラメータ化された型など、さまざまな種類があります。使用するメソッドは、プリミティブではなくClassNameが必要です。それにはTypeName.INTを使用してください。

関連する問題