Size: a a a

Kotlin Community

2020 May 06

AM

Andrew Mikhaylov in Kotlin Community
Vitaliy Velikodniy
Всем привет!
Возник такой вопрос: пишу класс с external fun, как из него сгенерировать h-файл напрямую? Я понимаю, что можно скомпилировать его в java, а потом javac -h . . А напрямую нельзя?
Для JNI? Из коробки такое не завезли.
источник

VV

Vitaliy Velikodniy in Kotlin Community
Andrew Mikhaylov
Для JNI? Из коробки такое не завезли.
Да, для JNI. Печально. Как думаете, стоит написать в багтрекер, или так и задумано?
источник

VB

Viacheslav Blinov in Kotlin Community
есть подозрение что поведение external сильно зависит от таргета
источник

AM

Andrew Mikhaylov in Kotlin Community
Есть предложение, что за всё это время там должны были уже завести ишью на тему)
источник

AM

Andrew Mikhaylov in Kotlin Community
Viacheslav Blinov
есть подозрение что поведение external сильно зависит от таргета
Так речь о JVM конкретно.
источник

VV

Vitaliy Velikodniy in Kotlin Community
Viacheslav Blinov
есть подозрение что поведение external сильно зависит от таргета
Ну javac -h всегда работало.
источник

VB

Viacheslav Blinov in Kotlin Community
Andrew Mikhaylov
Так речь о JVM конкретно.
да, но kotlinc не только в jvm компилит же?
источник

AM

Andrew Mikhaylov in Kotlin Community
Ясно, что для других поведение другое, в JS свои декларации, в N, если я правильно помню, external то ли совсем нет, то ли он только в стабах, сгенеренных cinterop, но это ж не значит, что для каждого таргета нельзя завести своё решение
источник

VV

Vitaliy Velikodniy in Kotlin Community
Да и можно, наверное, использовать платформонезависимые типы для генерации в большинстве случаев
источник

AM

Andrew Mikhaylov in Kotlin Community
https://youtrack.jetbrains.com/issue/KT-35127
Собсна, вот, лайкайте на здоровье
источник

VV

Vitaliy Velikodniy in Kotlin Community
Andrew Mikhaylov
https://youtrack.jetbrains.com/issue/KT-35127
Собсна, вот, лайкайте на здоровье
спасибо 🙂 не решение, но лайкнуть — лайкну)
источник

AM

Andrew Mikhaylov in Kotlin Community
Vitaliy Velikodniy
спасибо 🙂 не решение, но лайкнуть — лайкну)
Я думаю, при большом желании это можно без больших трудностей накостылять себе в гредле.
источник

VV

Vitaliy Velikodniy in Kotlin Community
так-то да, хочется без костылей же
источник

AM

Andrew Mikhaylov in Kotlin Community
Ох ё, там совсем весело, javah deprecated, а javac -h умеет только в сорцы, а не байткод, судя по прилинкованному вопросу на стеке.
источник

VV

Vitaliy Velikodniy in Kotlin Community
а зачем хэдер файлы в байткод?
источник

AM

Andrew Mikhaylov in Kotlin Community
Vitaliy Velikodniy
а зачем хэдер файлы в байткод?
В сорцы джавы вместо байткода джавы, имеется ввиду.
источник

RE

Roman Elizarov in Kotlin Community
Очень рекомендую посмотреть на JNA. Это намного приятней чем напрямую через JNI. https://github.com/java-native-access/jna
источник

AN

Alexander Nozik in Kotlin Community
Roman Elizarov
Очень рекомендую посмотреть на JNA. Это намного приятней чем напрямую через JNI. https://github.com/java-native-access/jna
Не успел. Еще есть JNR. Там правда с документацией было не хорошо
источник

VV

Vitaliy Velikodniy in Kotlin Community
о, еще зависимости. Спасибо за ссылки, но мне простой биндинг реализовать, лучше по-старинке через jni 🙂
источник

AN

Alexander Nozik in Kotlin Community
И раз уж заговорили, там начали по частям Панаму заводить в JVM
источник