java调用C语言 so文件,在liunx环境中Failed to write core dump.  悬赏:300 元(未托管 可议价)

2022-07-16 18:40发布

通过JAVA 接口 调用C语言 so文件 ,调用几次出现 的错误,导致Tomcat 奔溃如下:## A fatal error has been detected by the Java Runtim...

通过JAVA 接口 调用C语言 so文件 ,调用几次出现 的错误,导致Tomcat 奔溃如下:

#

# A fatal error has been detected by the Java Runtime Environment:

#

#  SIGSEGV (0xb) at pc=0x00007f3f6e3ed2c4, pid=9723, tid=0x00007f3f6c1f0700

#

# JRE version: Java(TM) SE Runtime Environment (8.0_311-b11) (build 1.8.0_311-b11)

# Java VM: Java HotSpot(TM) 64-Bit Server VM (25.311-b11 mixed mode linux-amd64 compressed oops)

# Problematic frame:

# V  [libjvm.so+0x9902c4]  oopDesc* PSPromotionManager::copy_to_survivor_space(oopDesc*)+0x204

#

# Failed to write core dump. Core dumps have been disabled. To enable core dumping, try "ulimit -c unlimited" before starting Java again

#

# If you would like to submit a bug report, please visit:

#   http://bugreport.java.com/bugreport/crash.jsp

#


JIN  C程序:


NIEXPORT jbyteArray JNICALL Java_com_jeeplus_common_jni_SoftEncryption_DataAutoEncrypt(JNIEnv *env, jobject cls, jbyteArray strPrKey,jbyteArray enDataBuf, jint enDataBufLen)

{


    

       jbyte* pPrKey = (*env)->GetByteArrayElements(env,strPrKey,0);

       unsigned char *privateKey=(unsigned char*)pPrKey;

       SoftEncryPtionInit(privateKey,1);

     

        jbyte* PenDataBuf = (*env)->GetByteArrayElements(env,enDataBuf,0);

        unsigned char *pOutputDataBuf=(unsigned char*)PenDataBuf;



    unsigned int DataEncryptBufLen =(int)enDataBufLen;


unsigned char *OutputDataBufLen;

        //*OutputDataBufLen=DataEncryptBufLen;


unsigned int DataAutoEncryptNum[1];

//memcpy(pOutputDataBuf, pDataEncryptBuf,DataEncryptBufLen);

for(DataAutoEncryptNum[0]=0;DataAutoEncryptNum[0]<5>

{

DataSingleEncrypt((unsigned char *)pOutputDataBuf,DataEncryptBufLen,(unsigned char *)pOutputDataBuf,(unsigned char *)OutputDataBufLen);//数据单次加密

}


       int size = DataEncryptBufLen;

       jbyteArray array = (*env)->NewByteArray(env,size);

       (*env)->SetByteArrayRegion(env,array, 0, size, (jbyte*)(PenDataBuf));


        //释放内存

        (*env)->ReleaseByteArrayElements(env,strPrKey, pPrKey, 0);

         (*env)->ReleaseByteArrayElements(env,enDataBuf,PenDataBuf, 0);

       //(*env)->ReleaseByteArrayElements(env,enDataBuf,PenDataBuf,0);

        //(*env)->ReleaseByteArrayElements(env,strPrKey,pPrKey,0);

       return array;

}



联系方式: 免费接单联系管理员微信 15323316397

提醒:请一定要用平台交易,私下交易,受骗平台免责!涉及到代码数据安全的权限,绝对不能给接单方。 交易流程:( 发布需求--点报名接单或联系管理员--平台派单-开始工作--确认完成) 10%手续费,提现48小时内到账。如不能解决,发单方点解雇,托管的赏金点解冻赏金,有雇佣历史的,解雇48小时后才能解冻赏金。

暂时还没有回复,开始

一周热门 更多>



安卓APP

微信公众号