草庐IT

concrypt_openjdk_jni

全部标签

Java:JFrame.setLocationRelativeTo(null) 在 Ubuntu 10.04/gnome 2.30.2 和 OpenJDK 1.6.0_18 上不使窗口居中

示例代码:JFramejFrame=newJFrame("Test");jFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);jFrame.setLocationRelativeTo(null);jFrame.setSize(600,600);jFrame.pack();//jFrame.setLocationRelativeTo(null);//sameresultsjFrame.setVisible(true);这是OpenJDK的错吗?我记得听说它不如Sun的好,但自从它成为Ubuntu的标准或我决定使用它的任何东西。该程序可

java - JNI C++ DLL - 'UnsatisfiedLinkError: %1 is not a valid Win32 application'

在深入研究我的实际代码之前,我试图让JNI正常工作,但是在我从C++编译DLL并运行我的Java应用程序之后,我得到:Exceptioninthread"main"java.lang.UnsatisfiedLinkError:\workspace\JNItest\native\jnitest.dll:%1isnotavalidWin32applicationatjava.lang.ClassLoader$NativeLibrary.load(NativeMethod)atjava.lang.ClassLoader.loadLibrary1(UnknownSource)atjava.la

java - JNI : passing bytes from c++ to java

HANDLEhFile=CreateFileA("C:\\myfile.zip",GENERIC_READ,0,NULL,OPEN_EXISTING,FILE_ATTRIBUTE_NORMAL,NULL);constintsize=GetFileSize(hFile,NULL);char*buffer=newchar[size];DWORDread;ReadFile(hFile,buffer,size,&read,NULL);jclasscls=...;jmethodIDid=...;jbyteArrayarr=env->NewByteArray(size);env->GetByteA

java - 如何在集成了 Jigsaw 的情况下为 OpenJDK 9 打补丁?

在Jigsaw之前,替换OpenJDK中的一个或多个类非常容易(执行一些测试或做出贡献)。我可以从OpenJDK源复制一个原始文件,例如java/util/ArrayList.java到src/java/util/,添加我想要的任何更改,然后编译它通常(输出到mypatch目录):$javac.exesrc\java\util\ArrayList.java-dmypatch之后,我可以使用-Xbootclasspath/p启动JVM,用修补后的ArrayList替换原来的ArrayList:$java-Xbootclasspath/p:mypatchMyTestClass然而,自从Ji

java - 将 C++ long 类型转换为 JNI jlong

我正在使用JNI在C++和Java之间传递数据。我需要传递一个“长”类型,并且正在使用类似的东西这样做:longmyLongVal=100;jlongval=(jlong)myLongVal;CallStaticVoidMethod(myClass,"(J)V",(jvalue*)val);但是在Java中,当检索到“long”参数时,它会被检索为某个非常大的负数。我究竟做错了什么? 最佳答案 当您将jlong​​(64位)作为指针(很可能是32位)传递时,您必然会丢失数据。我不确定约定是什么,但试试这个:CallStaticVoi

java - JNI——多线程

我有一个从C调用的Java函数的JNI包装器...我试图从不同的线程调用一些方法,但在尝试获取JNIEnv指针的新拷贝时出现错误...我正在使用的代码如下,并在每个方法中调用:JNIEnv*GetJniEnvHandle(){ThreadInfo();JNIEnv*envLoc;//if(Thread::CurrentThread->IsBackground||Thread::CurrentThread->IsThreadPoolThread)jintenvRes=vm->GetEnv((void**)&envLoc,JNI_VERSION_1_4);if(envRes==JNI_OK

java - 在 Java 中加载 DLL - Eclipse - JNI

我正在尝试使用以下代码在java中加载一个dllSystem.loadLibrary("mydll");项目放在D:\development\project\,我把dll放在了D:。然后我在eclipse配置中给出了以下VM参数-Djava.library.path=D:/但是当我运行时,我得到了UnsatisifiedLinkerError。谷歌搜索了一下后,我用System.load("D:\mydll.dll");但又遇到同样的问题,有人可以帮忙吗? 最佳答案 在库路径中指定DLL文件名的地方,省略它。此外,您的System.

Jmeter.bat启动时提示:OpenJDK 64-Bit Server VM warning: INFO: os::commit_memory(0x00000000c0000000,

问题描述:Jmeter.bat启动时提示如下:OpenJDK64-BitServerVMwarning:INFO:os::commit_memory(0x00000000c0000000,1073741824,0)failed;error=‘页面文件太小,无法完成操作。’(DOSerror/errno=1455)问题截图:问题原因:内存不足(内存溢出)。解决方案:打开内存管理器查看内存占用率。清理运行程序。

java - 无法编译 JNI 程序 rJava

我想安装rJava但它不起作用。当我输入RCMD控制台中的javareconf我收到以下错误:tryingtocompileandlinkaJNIprogamdetectedJNIcppflags:detectedJNIlinkerflags:gcc-std=gnu99-I/usr/share/R/include-DNDEBUG-fpic-O3-pipe-g-cconftest.c-oconftest.oconftest.c:1:17:error:jni.h:Nosuchfileordirectoryconftest.c:Infunction'main':conftest.c:4:wa

c# - 如何将 JNI C# 类传递给 Java 或处理这种情况?

我正在尝试从C#调用一个Java方法,它在java中是这样调用的:EgamePay.pay(thisActivity,payAlias,newEgamePayListener(){@OverridepublicvoidpaySuccess(Stringalias){}@OverridepublicvoidpayFailed(Stringalias,interrorInt){}@OverridepublicvoidpayCancel(Stringalias){}});前两个参数没问题,但是如何在C#中传递EgamePayListner呢?简单地创建具有相同功能的C#类是行不通的...这是