Size: a a a

2020 May 29

λ

λoλdog in graalvm_ru
даже
источник

ВВ

Виктор Вербицкий... in graalvm_ru
Т.е. другой класс в статическом конструкторе создаёт объект этого класса. И возможно даже start вызывает.
источник

ВВ

Виктор Вербицкий... in graalvm_ru
Вот ту точку и надо ловить. Для начала
источник

ВВ

Виктор Вербицкий... in graalvm_ru
Возможно просто тот класс утащить в рантайм запуск и этого хватит (но это не точно)
источник

λ

λoλdog in graalvm_ru
нет такого конструктора
источник

OS

Oleg Shelajev in graalvm_ru
лямбда там трогает логгер где-то
источник

ВВ

Виктор Вербицкий... in graalvm_ru
ну обычный конструктор в билдтайм просто так не запустится. Его только кто-то запустить может. Явно или неявно
источник

ВВ

Виктор Вербицкий... in graalvm_ru
Рефлекшен или ещё что
источник

ВВ

Виктор Вербицкий... in graalvm_ru
Ну и статический конструктор может же тоже неявный быть. Инициализация статического поля при объявлении тоже в статический конструктор ложится
источник

ВВ

Виктор Вербицкий... in graalvm_ru
я бы вообще на start бряку поставил. Возможно поймает
источник

λ

λoλdog in graalvm_ru
ну судя по тому, что NativeConstructorAccessorImpl юзает, то видимо все ж рефлекшин
источник

ВВ

Виктор Вербицкий... in graalvm_ru
ага. Его AsyncAppender наследует.
источник

ВВ

Виктор Вербицкий... in graalvm_ru
источник

AK

Andrey Kuleshov in graalvm_ru
Друзья, глупый вопрос. Прошу прощения за оффтоп разрыв общения. Я вижу, что чтобы в полиглоте запустить из Java например python, просто нужно создать контекст и запустить код, который представлен в виде String.

Но получается же, что код будет интерпретироваться JIT компилятором на рантайме? Это будет очень медленно?
А если запускать c++ из джава - тоже будет JIT компиляция? Как запустить AOT?

Извините, только знакомлюсь с GraalVm пока
источник

ВВ

Виктор Вербицкий... in graalvm_ru
Блин. Это тогда да. Придётся искать как конфига обрабатывается :(
источник

λ

λoλdog in graalvm_ru
ох, его даже в рефлект конфиге нет
источник

λ

λoλdog in graalvm_ru
может поэтому не работает
источник

OS

Oleg Shelajev in graalvm_ru
Andrey Kuleshov
Друзья, глупый вопрос. Прошу прощения за оффтоп разрыв общения. Я вижу, что чтобы в полиглоте запустить из Java например python, просто нужно создать контекст и запустить код, который представлен в виде String.

Но получается же, что код будет интерпретироваться JIT компилятором на рантайме? Это будет очень медленно?
А если запускать c++ из джава - тоже будет JIT компиляция? Как запустить AOT?

Извините, только знакомлюсь с GraalVm пока
отличный вопрос
источник

OS

Oleg Shelajev in graalvm_ru
λoλdog
может поэтому не работает
про логбак вот например ищщуе было https://github.com/oracle/graal/issues/807
источник

AK

Andrey Kuleshov in graalvm_ru
Просто у меня получилось очень долго такая программа работает
источник