如何使用 Eclipse TPTP 分析 JNI 应用程序?
Posted
技术标签:
【中文标题】如何使用 Eclipse TPTP 分析 JNI 应用程序?【英文标题】:How can I profile a JNI application using the Eclipse TPTP? 【发布时间】:2009-01-17 19:45:38 【问题描述】:我需要从 C 应用程序分析由 JNI 调用 API 启动的 Java 应用程序,自然 TPTP 工具似乎是一个不错的起点。但是,我可以启动应用程序,但我不知道如何连接到它以进行分析。我意识到这属于“愚蠢的新手”桶,但我真的有点迷路了。请允许我解释一下:
我已将 JVM 选项“-XrunpiAgent:server=controlled
”添加到我的 java VM 启动选项中。
我已添加$ECLIPSE_HOME/plugins/org.eclipse.tptp.platform.ac.linux_ia32_4.4.1.v200808290100/agent_controller/lib to my LD_LIBRARY_PATH
我正在针对 Sun Java 1.5.0_10 JVM 库运行
在 Eclipse 中,我有一个 Java 项目,其中包含我想要分析的代码。我没有分析启动配置,我也不知道需要在其中添加什么。
我的知识到此结束;当我启动我的基于 JNI 的应用程序时,它只是在 VM 启动期间停止并等待,大概是代理控制器连接。我需要采取哪些步骤才能实现这一目标并从中获取信息?
【问题讨论】:
【参考方案1】:我之前尝试过使用 TPTP,但始终无法正确设置。我可以建议您尝试使用 netbeans 中包含的分析器来连接到您的应用程序。我用它来分析一个带有 JNI 调用的应用程序,它对我很有帮助。当然,所有本机代码对分析器都是不透明的,它只会告诉您本机调用本身花费了多长时间。
I have a blog entry that explains how to profile Eclipse applications using netbeans, if it helps.
【讨论】:
【参考方案2】:您可以使用 C 分析器来分析您的 C 代码。它需要编译到您要分析的库中,但对于查看代码在做什么很有用。
【讨论】:
以上是关于如何使用 Eclipse TPTP 分析 JNI 应用程序?的主要内容,如果未能解决你的问题,请参考以下文章