Size: a a a

2020 April 27

OS

Oleg Shelajev in graalvm_ru
как и все что с рефлексией связано — пока не запустил разок и не увидел что и как работает - ничего не понятно как и что работает
источник

A

Alex in graalvm_ru
Да, но вопрос ведь не в этом, а в том что протестированный и рабочий код нужно переписывать чтобы он запустился с нейтив имейджем :)
источник

OS

Oleg Shelajev in graalvm_ru
если там reflection — то не нужно
источник

OS

Oleg Shelajev in graalvm_ru
вопрос в том что становится 2 фазы когда код запускается
источник

OS

Oleg Shelajev in graalvm_ru
и от этого становится непонятно когда какие вещи делать
источник

A

Alex in graalvm_ru
Individual classes, methods, and fields that should be accessible via reflection need to be known ahead-of-time. Native Image tries to resolve these elements through a static analysis that detects calls to the reflection API. Where the analysis fails the program elements reflectively accessed at run time must be specified during native image generation in a configuration file or by using RuntimeReflection from a Feature. For more details, read our documentation on reflection.
источник

OS

Oleg Shelajev in graalvm_ru
ну, запусти с агентом
источник

OS

Oleg Shelajev in graalvm_ru
он тебе неганерит конфиг
источник

OS

Oleg Shelajev in graalvm_ru
не надо ничего переписывать
источник

A

Alex in graalvm_ru
Можешь гарантировать что в момент тестов с агентом ты прошёл по всем путям где был рефлекшен?
источник

OS

Oleg Shelajev in graalvm_ru
вот когда ты в инициализаторах делаешь треды — тогда да, потому что непонятно что с ними делать
источник

OS

Oleg Shelajev in graalvm_ru
ты - генерируешь этим агентом конфиг
источник

A

Alex in graalvm_ru
И что не упадёшь потом в рантайме зайдя в очередную ветку
источник

OS

Oleg Shelajev in graalvm_ru
не я
источник

OS

Oleg Shelajev in graalvm_ru
в смысле для моего кода я
источник

OS

Oleg Shelajev in graalvm_ru
а для твоего кода ты
источник

A

Alex in graalvm_ru
Агент лишь трекает доступы, если во время сбора в ту ветку не заходило, то инфу он не соберет
источник

OS

Oleg Shelajev in graalvm_ru
ну, так мы же говорим сейчас про переписывать!
источник

OS

Oleg Shelajev in graalvm_ru
я говорю что не обязательно переписывать
источник

OS

Oleg Shelajev in graalvm_ru
а ты говоришь что надо переписывать
источник