草庐IT

hello-jni

全部标签

c++ - Cuda Hello World printf 即使使用 -arch=sm_20 也不工作

我不认为我是Cuda的新手,但显然我是。我最近将我的cuda设备升级到了1.3到2.1的一种功能(GeforceGT630)。我还想全面升级到Cuda工具包5.0。我可以编译通用的cuda内核,但即使设置了-arch=sm_20,printf也无法正常工作。代码:#include#include#include#include__global__voidtest(){printf("HiCudaWorld");}intmain(intargc,char**argv){test>>();return0;}编译器:Error2errorMSB3721:Thecommand""C:\Prog

java - JNI 调用返回对象的 Java 函数导致 NoSuchMethodError

我有一个Java函数,它返回一个类的单例实例publicstaticsynchronizedMyClassgetInstance()throwsMyClassException{if(instance==NULL){//create}returninstance;}我想通过C++代码调用它,但是当我这样做时,它返回了一个NoSuchMethodError。cls=jenv->FindClass("MyClass");if(cls==NULL){//errorhandling}mid=jenv->GetStaticMethodID(cls,"getInstance","()LMyClas

java - JNI Stream 二进制数据从 C++ 到 Java

我需要帮助将二进制数据传递到Java。我正在尝试使用jbytearray,但是当数据进入Java时,它似乎已损坏。有人可以帮帮我吗?这是一些示例代码的片段。首先是nativeC++端:printf("Buildingaudioarraycopy\n");jbyteArrayrawAudioCopy=env->NewByteArray(10);jbytetoCopy[10];printf("Fillingaudioarraycopy\n");chartheBytes[10]={0,1,2,3,4,5,6,7,8,9};for(inti=0;iSetByteArrayRegion(rawA

java - 使用 JNI 构建 C++ Java 包装器

我目前正在为C++类编写JNI包装器,我不确定到目前为止我所做的是否是最正确的方法。据我所知,不可能声明一个Java构造函数native,所以我最后写了类似这样的东西:packagelog;publicclassLogger{privatelonginternalPtr=0;privatenativelongcreateNativeInstance(Stringapplication,Stringmodule,Stringfunction);publicLogger(Stringapplication,Stringmodule,Stringfunction){this.internal

javascript - "Hello World"+ JS V8 + VS2010

我下载并构建了JSV8,以便在Release模式下的VS2010中使用。现在我尝试运行HelloWorldexample:#include"v8.h"int_tmain(intargc,_TCHAR*argv[]){v8::HandleScopehandle_scope;v8::Persistentcontext=v8::Context::New();v8::Context::Scopecontext_scope(context);v8::Handlesource=v8::String::New("'Hello'+',World'");v8::Handlescript=v8::Scri

c++ - 在 Android 上使用 OpenCV 将 cv::Mat 传递给 JNI 时出错

我正在使用OpenCV和JNI开发一个Android项目。实际上我正在更改人脸检测示例。我遇到的问题是,当我传递cv::Mat引用时,它会给出一些奇怪的输出,但传递不顺利。为了让您了解情况,我在我的FdActivity.java中有这个,这是我的android应用程序的主要事件:publicMatonCameraFrame(CvCameraViewFrameinputFrame){rgb=inputFrame.rgba();Matres=mNativeDetector.process(rgb);returnres;}过程函数是这样的:publicMatprocess(Matrgb){M

c++ - 尝试(但失败)在 Windows 10 的 64 位 Ubuntu 上运行 Hello World 32 位 C++ 程序

我通过以下方式从头开始在Windows10上配置了我的新Ubuntu:#apt-getupdate#apt-getinstallbuild-essential##Amabletocompilenowusing"g++-Wall-oHello-WorldHello-World.cpp",thebinaryisworking.##Tocheckversions,andthatbothpackageswereindeedinstalled#gcc-v#make-v#apt-getinstallg++-multilib##Thisalsoinstallsgcc-multilibasadepen

c++ - Windows clang Hello World lnk4217

我已经安装了clang6.0版以及VisualStudio2017。我正在编译一个简单的“helloworld”应用程序:#includeintmain(){std::cout使用clanghello.cpp这给了我警告:hello-d1b2c6.o:warningLNK4217:locallydefinedsymbol__std_terminateimportedinfunction"int`public:staticunsigned__int64__cdeclstd::char_traits::length(charconst*const)'::`1'::dtor$2"(?dtor

java - C++ 应用程序可以使用 JNI 加载 .jar 文件吗?

感谢您查看问题。我正在尝试使用JNI接口(interface)调用类文件中的java方法。反过来,被调用的类文件应该执行位于同一目录中的另一个.jar文件吗?我很难做到这一点,但我没有成功执行.jar文件。我的意思是我无法从.jar文件中可用的类文件中获取结果。谁能解释一下,是否可以这样做,或者我应该寻找另一种选择?代码是这样的:classJNIInterface{private:JavaVMInitArgsvm_args;JavaVM*jvm;JNIEnv*env;longresult;jmethodIDmid;jfieldIDfid;jobjectjobj;jclasscls;in

C++进程中的Java JNI泄漏

我是Java初学者。我的问题是:我正在从C++调用Java类的方法。为此,我正在使用JNI。一切正常,但我在C++程序的过程中有一些内存泄漏...所以..我做了一个简单的例子..1)我创建了一个java机器(jintres=JNI_CreateJavaVM(&jvm,(void**)&env,&vm_args);)2)然后我在java类上取一个指针(jclasscls=env->FindClass("test_jni"));3)之后我通过调用构造函数(testJavaObject=env->NewObject(cls,testConstruct);)创建了一个java类对象对象在c++