Size: a a a

2020 May 27

RU

Roman Ushakov in graalvm_ru
Dan
Ок, я должен сказать, что коллега работает GraalVm + SpringBoot + Kotlin и все работает ОК, в его reflect-config.json есть базовые типы. Я работаю с GraalVm + Micronaut + Kotlin и у меня по какой-то причине отсутствуют некоторые базовые типы )
Котлин и native image?
Вау
источник

λ

λoλdog in graalvm_ru
а что вау?
источник

D

Dan in graalvm_ru
Oleg Shelajev
А когда спринг - делает?
Да, именно так, т.е., например, по какой-то причине parameterTypes пустой, когда для springa там будут параметры т.е.
Для micronaut:

{
 "name":"x.y.z.scheduler.$SegmentsReaderSchedulerDefinitionClass",
 "methods":[{"name":"<init>","parameterTypes":[] }]
},
И коллеги класс тоже в котлине но со springom выглядит так:
{
 "name":"x.y.z.Searcher",
 "allDeclaredFields":true,
 "allDeclaredMethods":true,
 "methods":[{"name":"<init>","parameterTypes":["x.y.z.LocalStorage","java.lang.String"] }]
},
источник

D

Dan in graalvm_ru
Хотя у первого примера тоже есть параметры в самом коде
источник

λ

λoλdog in graalvm_ru
ну так это разные методы
источник

λ

λoλdog in graalvm_ru
разных классов
источник

λ

λoλdog in graalvm_ru
прост в одном классе у тебя есть в конструкторе параметры, во втором нет
источник

D

Dan in graalvm_ru
Да, это было как пример, я могу скопировать его код к себе и в reflect-config.json агент выгенирирует разные значения )
источник

D

Dan in graalvm_ru
У меня и у моего коллеги в конструкторах тех классов что я скинул есть параметры )
источник

λ

λoλdog in graalvm_ru
ну может разные конструкторы вызывались
источник

λ

λoλdog in graalvm_ru
эт уже от приложения зависит наверное
источник

D

Dan in graalvm_ru
Хм
источник

λ

λoλdog in graalvm_ru
ты же этот файл сгенерил?
источник

λ

λoλdog in graalvm_ru
после запуска приложения с профайлингом?
источник

D

Dan in graalvm_ru
Да, я вызвал, в принципе, все сценарии моего приложения, которые мне пришли в голову
источник

D

Dan in graalvm_ru
Мне кажется что я делаю что-то в корне неверно потому как эксешпны недетерминистические. Сейчас я вижу эту, которой раньше не было:
Caused by: java.lang.AssertionError: Built-in class kotlin.Any is not found
источник

D

Dan in graalvm_ru
Ладно, в любом случае всем спасибо, пойду разбираться дальше )
источник

OS

Oleg Shelajev in graalvm_ru
Про классы jdk в конфигурации которую генерит агент может быть баг.
источник

OS

Oleg Shelajev in graalvm_ru
Про параметры - Спринг может вызывать конструктор с параметрами а микронавт может annotation processor-ом что-то нагенерил и вызывает без параметров
источник

OS

Oleg Shelajev in graalvm_ru
Очевидно что котлин и native image никто обильно не тестировал
источник