Как настроить инструмент Javah в Eclipse

1

Я нашел уже около 5 ответов, пробовал все и не работал.

Env: Ubuntu 12.04/Indigo

Run- > Внешние инструменты- > Настройка внешних инструментов...

Создана новая программа Местоположение:/usr/bin/javah/* $, который javah дает /usr/bin/javah */

Рабочий каталог: ${workspace_loc:/MyProject/bin/classes}

Атрибуты: -d ${workspace_loc:/MyProject/jni} com.myproject.MyActivity

Результат RUN: Не удалось найти файл класса для 'com.myproject.MyActivity'

Запуск от терминала дает тот же результат maxim @ubuntu: ~/workspace/MyProject/bin/classes $javah -jni com.myproject.MyActivity

Ошибка: не удается получить доступ к android.app.Activity файл класса для android.app.Activity не найден maxim @ubuntu: ~/workspace/MyProject/bin/classes $

Установлен SDK/NDK, добавлены внешние пути. Как добавить недостающие части? Спасибо всем.

Отредактировано 3 июля

Перемещение загрузки собственной библиотеки в отдельный класс решило проблему

  • 1
    Этот вопрос не является дубликатом использования javah в Linux . Затмение совсем другое животное. Кроме того, будущие посетители могут работать на Windows или OS X. Это плохая услуга, чтобы указать им неправильный дубликат.
Теги:
jni

3 ответа

2
Лучший ответ

У меня тоже была очень похожая проблема на linux. оказалось, что я не делал этого в правой папке.

Попробуйте прочитать его и посмотреть, помогает ли это: Использование javah на linux.

  • 0
    В конце концов он говорит мне: «Ошибка: невозможно получить доступ к файлу класса android.app.Activity для android.app.Activity не найден» Есть предложения?
  • 0
    Вы правильно указали путь к своему классу? android.app.Activity «принадлежит» android: developer.android.com/reference/android/app/Activity.html, поэтому странно, что вы используете точный путь от Google. какова ваша точная команда?
Показать ещё 3 комментария
9

Разрабатывая этот пост, также упоминается в ответе разработчика Android:

Как вы можете видеть на снимке экрана ниже, настройте внешние инструменты следующим образом:

  • В Eclipse ADT нажмите "Запустить", наведите указатель на последнюю опцию меню "Внешние инструменты" и выберите "Конфигурации внешних инструментов"

  • Задайте пути до следующих значений:

    2,1. Местоположение: везде, где вы установили Java      C:\Program Files\Java\jdk1.7.0_13\bin\javah.exe

    2,2. Рабочий каталог: каталог project/bin/classes/      $ {Workspace_loc:/MyProject/bin/классы}

    2,3. Аргументы:      -jni ${java_type_name}

  • Нажмите на run (обратите внимание, что вы должны выбрать класс java)

  • Используя браузер файлов, проверьте каталог /bin/classes/ - вы должны найти там файл заголовка .h.

Изображение 174551

Надеюсь, это поможет кому-то.

  • 0
    «$ {workspace_loc: / MyProject / bin / classes}», почему мы используем $ здесь? мы не можем использовать абсолютный путь?
1

На основе ответа Enke я добавил больше аргументов для удобства.
1. Вам не нужно правильно устанавливать рабочий каталог, используя "-classpath" (вы можете игнорировать настройки рабочего каталога на рис.)

2.Вы можете получить подробную информацию с интегрированной консоли в Eclipse.
3.Вы можете указать выходной каталог с помощью параметра "-d".
* Не забудьте заменить имя каталога проекта на этом рисунке ( "MyProject" )

Изображение 174551

Ещё вопросы

Сообщество Overcoder
Наверх
Меню