Описание тега javapoet
JavaPoet - это Java API для создания исходных файлов.java.
1
ответ
Передать массив как значение параметра аннотации в JavaPoet
Используя JavaPoet я пытаюсь аннотировать класс с аннотацией, которая имеет массив в качестве значения параметра, т.е. @MyCustom(param = { Bar.class, Another.class }) class Foo { } я использую AnnotationSpec.builder И его addMember() метод: List<…
07 мар '17 в 14:30
0
ответов
Обнаружение логически дублирующих классов в разных иерархиях классов в Java
У меня есть несколько классов Entity со следующей структурой. class A { ... other fields. static class B { String field1; int field2; C fieldC; static class C { String field3; } } } class X { ... other fields static class B { String field1; int fiel…
12 апр '18 в 21:52
1
ответ
Напишите файл Java с использованием JavaPoet в процессоре аннотаций
Я пытаюсь использовать processingEnv.getFiler() для создания исходного файла. Но я не вижу создания исходного файла. Ниже приведен код, который я использую: public void javaPoetEg() { Filer filer = super.processingEnv.getFiler(); MethodSpec main = M…
10 фев '19 в 09:30
1
ответ
Обработка аннотаций Java: ссылка на сгенерированный тип в другом сгенерированном коде
@GenerateInterface class A {} @GenerateInterface class B { void setA(IA a) {} } Мой процессор аннотаций должен генерировать эти интерфейсы: interface IA {} interface IB { void setA(IA a); } B компилируется нормально с правильным оператором импорта. …
15 май '17 в 11:49
1
ответ
Javapoet суперкласс универсальный
Кто-нибудь знает, как я могу сделать следующее с помощью javapoet public class MyClassGenerated extends MyMapper<OtherClass>{ } Мой код поколения: TypeSpec generateClass() { return classBuilder("MyClassGenerated") .addModifiers(PUBLIC) .superc…
04 май '16 в 13:02
1
ответ
Как добавить ограничения типа в parameterSpec для метода
Я пытаюсь сделать именно то, что говорит заголовок - я хотел бы создать спецификацию метода, которая выглядит примерно так: public void doSomethingWithThis( Container<? extends ImportantInterface> argument ) { //1. Collect UnderPants //2. ... …
05 мар '18 в 09:31
1
ответ
JavaPoet - запись вызова статического универсального метода
Я хочу написать CodeBlock который в основном вызывает статический универсальный метод, но вывод, который я получаю с JavaPoet генерирует ошибки компилятора. Например, задан следующий класс значений auto: @AutoValue public abstract class Test<T>…
26 апр '18 в 17:15
1
ответ
Javapoet: писать то же самое с меньшим количеством строк кода (addModifiers)
Итак, у меня есть этот код (с использованием Javapoet Lib): if (myBeautifulBoolean) <-------------------------- theClass = TypeSpec.classBuilder(classe.getName()) .addModifiers(javax.lang.model.element.Modifier.valueOf(classe.getProte().toString(…
27 мар '17 в 21:45
0
ответов
Почему процессор аннотаций не генерирует код?
У меня есть простой процессор аннотаций. @SupportedSourceVersion(SourceVersion.RELEASE_7) @AutoService(Processor.class) public class FirstProcessor extends AbstractProcessor { private Messager messager; private EnumGenerator enumGenerator; private E…
16 июн '17 в 11:03
1
ответ
Создайте поле как анонимный класс с JavaPoet
Я работаю над библиотекой процессора аннотаций и использую JavaPoet для генерации сом-кода Java. Мне нужно сгенерировать класс с полем, объявленным анонимным классом, как следующий код: public class Dummy { private final OnSharedPreferenceChangeList…
24 май '18 в 20:17
0
ответов
Генерация вызова метода с переменным числом аргументов
Я использую JavaPoet для генерации классов по списку полей. Генерация конструктора, который берет этот список полей и превращает его в список параметров, довольно прост с чем-то вроде следующего: val constructor = MethodSpec.constructorBuilder() for…
10 янв '19 в 12:43
1
ответ
Как добавить статический раздел в Java-класс в javapoet
Есть ли в любом случае, чтобы добавить статический блок кода в класс Java, используя библиотеку Javapoet static { // whatever code is needed for initialization goes here }
16 дек '15 в 18:15
1
ответ
Генерация аннотаций с использованием JavaPoet
Я пишу генератор кода с использованием JavaPoet и мне нужно добавить аннотацию к классу Например: package some.package import org.hibernate.annotations.CacheConcurrencyStrategy; import javax.persistence.Entity; import javax.persistence.Cache @Entity…
25 авг '15 в 03:29
1
ответ
Метод сборки с открытым списком параметров с помощью javapoet
Возможно ли с помощью javapoet создать метод с открытым списком параметров? Создать метод с параметром String[] не составит труда: curEnumBuilder.addMethod(MethodSpec.methodBuilder("myMethod") .addParameter(String[].class, "params", Modifier.FINAL) …
11 май '18 в 12:09
1
ответ
Возвращать правильно типизированные объекты при создании класса с использованием javapoet
Я работаю над процессором аннотаций и использую JavaPoet для генерации выходного класса из обработки, но я не могу найти способ заставить сгенерированный метод вернуть правильно типизированный объект. Например, вывод, который я хотел бы получить, вы…
21 сен '18 в 18:58
2
ответа
Как создать символ класса<?> с помощью javapoet
Я хочу создать поле как это: public static Map<String, Class<?>> ID_MAP = new HashMap<String, Class<?>>(); WildcardTypeName.subtypeOf (Object.class) может давать '?' WildcardTypeName.subtypeOf(Class.class) может дать 'Class'
09 ноя '16 в 14:52
1
ответ
Назначить массив для инструкции MethodSpec в JavaPoet?
Я использую JavaPoet для создания кода Java. Я определил следующий массив: String[] testArr = new String[] {"1","2"}; и конструктор: ArrayTypeName stringArray = ArrayTypeName.of(String.class); MethodSpec constroctMethod = MethodSpec.constructorBuild…
28 апр '15 в 16:32
0
ответов
Установить значение поля по аннотации
Я хочу установить значение переменной по аннотации. У меня есть следующий код: public class Foo { @AutoProperty private String bar; //... } Аннотация определяется следующим образом: @Target(ElementType.FIELD) @Retention(RetentionPolicy.SOURCE) publi…
19 ноя '17 в 11:28
1
ответ
Общий параметр JavaPoet
Как бы я сгенерировал метод со следующей подписью? public static <T extends MyClass & MyInterface> MyOtherClass someMethod(T type)
29 янв '17 в 00:20
3
ответа
Строка java.lang.ClassCastException в JavaPoet.FieldSpec
Я использую JavaPoet API для создания исходного кода. Тем не менее, в какой-то момент я извлекаю требуемые данные из xml, который представляет собой готовую строку для создания полей, затем я сохраняю строку в Object, а затем приводю объект в FieldS…
01 апр '16 в 08:30