JavaPoet'i, bir literal değeri olan bir ek açıklama oluşturmak için kullanmak istiyorum. Ben Aklıma gelen tüm seçenekleri denedimBir sınıf değişmezi oluşturmak için JavaPoet'i nasıl alabilirim?
@AutoService(MyService.class)
public class GeneratedClass implements MyService {
}
, ama hiçbiri işe: Örneğin:
TypeSpec.classBuilder("GeneratedClass")
.addModifiers(Modifier.PUBLIC)
.addSuperinterface(MyService.class)
.addAnnotation(
AnnotationSpec.builder(AutoService.class).addMember(
"value", "$L", MyService.class
).build()
)
yakın ama hangi $L
$T
my.package.MyService
üretir kullanılarak interface MyService
üretir kullanarak .class
parçasını özlüyor. Ben açıklama değeri olarak MyService.class
oluşturmak için nasıl elde edersiniz expected name but was my.package.MyService
: $N
kullanarak
hata veriyor?
bunu yapmak için başka bir yol bilmiyorum. Tavsiye ediyorum çünkü format ''' '' '' '' '' '' '' '''' değil. –
Tam olarak doğru yol. –
Bir 'ParameterizedTypeName' ile uğraşırken n'aber? – WouterH