Eclipse показывает ошибку, в то время как ndk_build успешен [duplicate]

0

Я использую Java Native Development для Android. И я использую Android NDK и eclipse как IDE. Очень часто я пишу код C/C++ в jni и eclipse показывает такие ошибки, как:

Не удалось решить:

  1. JNIEXPORT
  2. JNICALL
  3. JNIEnv
  4. jobject
  5. JINT

Но, с другой стороны, ndk-build создает файл.so без каких-либо ошибок или даже предупреждений. Как исправить это в eclipse?

Если вам нужен код, который я компилирую:

#include <jni.h>
#include <unistd.h>

int multiply(int i, int j) {
         int x = i * j;
         return x;
}

extern "C" {
         JNIEXPORT jint JNICALL Java_cookbook_chapter3_HelloNDKGDBActivity_multiply(JNIEnv* env, jobject o, jint pi, jint pj){
           int i = 1, j = 0;
           while (i) {
             j=(++j)/100;
           }
           return multiply(pi, pj);
        }
}
  • 0
    Все они определены в jni.h. Вы включаете это?
  • 0
    Конечно, в противном случае ndk-build потерпит неудачу.
Теги:
android-ndk
jni

2 ответа

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

Попробуйте обновить дерево проекта. Очень часто затмение показывает ошибку, почему при нажатии на проект и нажатии F5 (обновление) ошибки исчезли. Но не могут ли они, пожалуйста, пробовать подход ниже:

отключить все проверки в свойствах проекта → C/C++ Общие → Анализ кода

См. Фактический ответ здесь: Уведомление об ошибке синтаксиса в собственном коде в Eclipse с использованием новейшего NDK r8d

0

У меня уже были такие проблемы. Я не знаю, было ли это ваше дело, но может быть. Во всяком случае, мой плагин для CDT eclipse работает не очень хорошо, и каждый раз, когда я редактирую или даже открываю файл C/C++, он заполняется ошибками. Но я могу нормально менять файлы, и ndk-build работает правильно. Вы пробовали другой редактор файлов C/C++? Это может быть решением, чтобы остановить получение этих ошибок.

  • 0
    Использовали редактор TextWrangler и магию - это помогло. :) Также я скопировал доде из файла .pdf с помощью Preview . Может быть, это тоже было причиной, я не знаю. Но спасибо :)
  • 0
    Но я думаю, это не единственный способ, которым это происходит. Это может произойти и без причины. Я даже удалил CDT, NDK и повторно загрузил их, чтобы это исправить. Я думаю, что Eclipse не является стабильной IDE.
Показать ещё 1 комментарий

Ещё вопросы

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