草庐IT

concrypt_openjdk_jni

全部标签

java - 在 Mac 上安装 rJava 时遇到问题; JNI 数据类型的问题

已解决!!请参阅下面我的解决方案,以防这个问题在未来对其他人有所帮助。错误如标题所述,它对我来说失败了。当我尝试从R内部安装install.packages('rJava')时,我收到的错误是(之前进行了一些良好的检查):checkingwhetherJNIprogramscanbecompiled...yescheckingJNIdatatypes...configure:error:OneormoreJNItypesdifferfromthecorrespondingnativetype.Youmayneedtousenon-standardcompilerflagsoradiff

java - JNI。如何从 jobject 获取 jstring 并将其转换为 char*

这是我目前所拥有的:我传递了一个具有2个字段的对象:String和Integer,作为参数我想发送信息在C部分进行处理,这在这一点上并不重要......我在jstring声明中收到投诉JNIEXPORTjintJNICALLJava_Tier3_NativeMethods_totalPalletsIn(JNIEnv*env,jclasscls,jobjectstat){jclassstaticsitcs=(*env)->GetObjectClass(env,stat);//HereItrytogetitusingtheIDjfieldIDidDate=(*env)->GetFieldI

Java JNI - 是否可以从 C++ 在 Java 中设置单个原始数组元素

基本上,我一直在执行以下操作来检索Java实例字段(在本例中为int)并将其设置为新值,如下所示:jclasscls=env->GetObjectClass(obj);jfieldIDfid=env->GetFieldID(cls,"myVariable","I");env->SetIntField(obj,fid,(jint)2012);但是,我想对javaint数组中的单个int元素执行此操作,这样:jclasscls=env->GetObjectClass(obj);jfieldIDfid=env->GetFieldID(cls,"myVariableArray","[I");P

java - 在哪里可以找到最新的 OpenJDK 8 GA build windows 10?

我正在尝试找到OpenJDK8GA版本。当我导航到https://openjdk.java.net/提供了指向https://jdk.java.net/11/的链接对于最新的openJDK11构建。一旦我到达左侧导航栏上的jdk.java.net/11,就会有一个指向jdk8的链接。我看到的问题是版本8是一个EA构建。在哪里可以找到适用于Windows的最新GA版本? 最佳答案 2019-07-02编辑:OpenJDK的某些部分现在提供“官方”二进制文件。OpenJDK8和11可在此处获得:https://adoptopenjdk.

java - 为什么 OpenJDK 11 Java 垃圾收集器*减少*此示例程序中的可用内存?

当我使用OpenJDK11(Windows10上的Zulu发行版)编译并运行以下非常简单的Java程序时:publicclassGCTest{publicstaticvoidmain(String[]args){System.out.println("Freememorybeforegarbagecollection:"+Runtime.getRuntime().freeMemory());Runtime.getRuntime().gc();System.out.println("Freememoryaftergarbagecollection:"+Runtime.getRuntime

java - 为什么 java.util.Arraylist#clear 是按照它在 OpenJDK 中的方式实现的?

http://grepcode.com/file/repository.grepcode.com/java/root/jdk/openjdk/6-b14/java/util/ArrayList.java#473publicvoidclear(){modCount++;//Letgcdoitsworkfor(inti=0;i我的问题是,为什么他们必须通过支持数组{O(n)}进行循环以使每个元素符合垃圾回收条件,而他们本可以重新初始化支持数组,丢弃对整个数组的引用整个{O(1)}并使其符合垃圾收集条件?clear()的O(n)性能对我来说似乎不太好,还是我遗漏了什么?

java - 如何使用 JNI 实例化 Java 泛型?

如果我想实例化一个Date,我可以使用:jclasscls=(*env)->FindClass(env,"java/util/Date");jmethodIDctr=(*env)->GetMethodID(env,cls,"","()V");jobjectobj=(*env)->NewObject(env,cls,ctr);但是我如何实例化ArrayList? 最佳答案 同理。在VM级别,没有泛型。 关于java-如何使用JNI实例化Java泛型?,我们在StackOverflow上找到

java - JNI system.out 和 printf 行为

我正在编写一个程序,该程序使用JNI与一个简单的C程序进行交互。我创建了以下程序:publicstaticvoidmain(String[]args){Helloh=newHello();System.out.println("before");intnumber=h.sayHello();System.out.println(number);System.out.println("after");}和JNIEXPORTintJNICALLJava_Hello_sayHello(JNIEnv*env,jobjectobj){printf("HelloJNI\n");return10;}

java - 使用 JNI 从 C 调用 java 代码时发生内存泄漏

我有一个C程序,它使用JNI在java存储中存储一些对象。(在有人问之前,这里需要使用javastore,我必须用C编写一个客户端,它能够从这个store添加和检索对象)。我编写了程序并尝试添加100000个大小为1KB的对象。但是在仅添加50000个对象后,我收到“内存不足”消息(请注意,每当我无法使用NewStringUTF和NewByteArray函数分配新的字符串或字节数组时,我都会打印这些“内存不足”消息)。那时我的应用程序只使用了80MB的内存。我不明白为什么这些方法返回NULL。有什么我想念的吗。此外,即使我正在释放为java创建的字节数组和字符串,内存也会继续增加。这是

java - 在哪里可以找到 Mac OS 的 jni 头文件

我不是问我在我自己的电脑上哪里可以找到它,我是问我在哪里可以得到它。我已经完成了我的谷歌作业,但我没有在这些路径中找到标题。我的/System/Library/Java/JavaVirtualMachines/...中甚至没有Header文件夹,而且我的根目录下也没有Developer文件夹。现在我很确定我没有安装这些header,我检查了MacOS开发者网站,但我只发现了一些损坏的链接。OpenJDK或SunJDK不应该在某处为MacOS提供jni.hheader吗? 最佳答案 /Applications/Xcode.app/Co