JNI kann __int64 auf NetBeans nicht erkennen

Ich versuche, eine native Bibliothek zu kompilieren, um sie von Java aus (mit JNI) zu verwenden. Ich habe dieses Tutorial befolgt:https: //cnd.netbeans.org/docs/jni/beginning-jni-win.htm

Der Fehle

Wenn ich versuche zu kompilieren, habe ich diesen Fehler (siehe Zeile 4):

[...]
In file included from ../../Progra~2/Java/jdk1.8.0_91/include/jni.h:45:0,
                 from HelloWorldNative.h:3,
                 from HelloWorldNative.c:6:
../../Progra~2/Java/jdk1.8.0_91/include/win32/jni_md.h:34:9: error: unknown type name '__int64'
 typedef __int64 jlong;
         ^
nbproject/Makefile-Debug.mk:66: recipe for target 'build/Debug/Cygwin-Windows/HelloWorldNative.o' failed
[...]

Ich kann diesen Fehler lösen, indem ich ein @ hinzufütypedef long long __int64 Vor dem#include <jni.h> aber ich nehme an, dass es etwas gibt, was ich falsch mache.

Der Cod

Hier ist der Code:

HEADER-DATEI

/* DO NOT EDIT THIS FILE - it is machine generated */
typedef long long __int64; // <============ Why do I need to do this?
#include <jni.h>
/* Header for class helloworld_Main */

#ifndef _Included_helloworld_Main
#define _Included_helloworld_Main
#ifdef __cplusplus
extern "C" {
#endif
/*
 * Class:     helloworld_Main
 * Method:    nativePrint
 * Signature: ()V
 */
JNIEXPORT void JNICALL Java_helloworld_Main_nativePrint
  (JNIEnv *, jobject);

#ifdef __cplusplus
}
#endif
#endif

QUELLENDATEI:

/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
#include "HelloWorldNative.h"

JNIEXPORT void JNICALL Java_helloworld_Main_nativePrint
  (JNIEnv *env, jobject _this){

}

Antworten auf die Frage(4)

Ihre Antwort auf die Frage