Ошибка Javah при использовании его в JNI

Размещение файлов Kotlin в отдельном исходном каталоге существует как документированная возможность, потому что в ранних (до 1.0) версиях Kotlin это была единственная поддерживаемая установка. После этого плагин Kotlin Gradle стал более гибким, поэтому разделение каталогов больше не требуется. Мне неизвестны какие-либо преимущества, которые можно получить, поместив файлы Kotlin в отдельный каталог с исходными текстами.

Наличие отдельного исходного каталога особенно неудобно, когда у вас есть проект Java, который вы постепенно конвертируете в Kotlin. Перемещение каждого преобразованного файла в другой исходный каталог делает процесс преобразования излишне громоздким.

43
задан madth3 7 December 2012 в 19:17
поделиться

2 ответа

Попробуйте

javah -jni com.example.JavaHowTo

, где com.example - ваш пакет.

Вам также необходимо запустить javah из каталога, содержащего com / example /JavaHowTo.class

eg если ваша структура

/home/user/com/example/JavaHowTo.class

запустите javah из

/home/user
81
ответ дан 26 November 2019 в 22:30
поделиться

Я успешно использую javah каждый день из моих сценариев сборки со следующими параметрами:

javah -d -classpath

где:

'outputdir' - это каталог, в который помещается сгенерированный файл заголовка

'classpath' содержит абсолютный путь к каталогу, содержащему ваш корневой пакет (как указано Гленом)

'full_qualified_class' - это имя класса, содержащего собственный методы без расширения .class

-jni опция не требуется (установлена ​​по умолчанию)

В любом случае вы должны проверить, был ли сгенерирован ваш файл класса: очень удивлен, что вы тоже получаете ошибку javadoc ...

11
ответ дан 26 November 2019 в 22:30
поделиться
Другие вопросы по тегам:

Похожие вопросы: