首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Java调用C调用Java

Java调用C调用Java
EN

Stack Overflow用户
提问于 2011-03-24 04:32:27
回答 4查看 448关注 0票数 5

我想使用JNI从Java调用一个C函数。在C函数中,我想创建一个JVM并调用一些Java对象。当我尝试创建JVM时,JNI_CreateJavaVM返回-1。

所以,我想知道是否可以做到这一点。编译C代码以创建一个.so文件(在linux中),然后Java代码调用.so文件中的函数。

任何执行Java->C->Java的示例都会很有用。

谢谢。

EN

回答 4

Stack Overflow用户

发布于 2011-03-24 04:37:40

不,不幸的是这不可能。每个进程只能有一个JVM,而且您已经在一个JVM进程中。

票数 2
EN

Stack Overflow用户

发布于 2011-03-24 04:42:04

我看不出Java-->C-->Java有什么意义。

如果可以从Java调用C,那么可以在C函数返回后从Java调用Java。

Excelsion xFunction是一个用于从Java调用C的简单而可靠的库。它处理那些奇怪的JNI东西,给你一个更简单的界面。

票数 2
EN

Stack Overflow用户

发布于 2011-03-24 04:44:57

为什么需要创建第二个JVM?您不能创建第二个JVM,但可以从C代码访问Java类。参见Accessing Java Objects

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5411271

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档