尝试分析应用程序时重新定义失败,出现错误 62

Posted

技术标签:

【中文标题】尝试分析应用程序时重新定义失败,出现错误 62【英文标题】:Redefinition failed with error 62 while trying to profile an application 【发布时间】:2014-11-09 23:41:25 【问题描述】:

如果我尝试在 VisualVM 的帮助下分析应用程序(在 Eclipse 下准备,但从命令行运行),我会收到以下错误消息

同时,项目文件夹被新创建的类文件弄脏了。尽管它们已经存在于target/classes

项目结构是Maven的,即当前目录下有一个文件夹target/classes,我使用以下命令运行应用程序

java -Xmx16g -cp target/classes tests.Runner01

如何解决?

更新

传统的 java 项目也是如此。

在它下面是填充的类文件的图片,它位于不应出现的位置

【问题讨论】:

【参考方案1】:

这里https://netbeans.org/bugzilla/show_bug.cgi?id=191297 出现了一种解决方法: 使用 -Xverify:none 运行已分析的应用程序

【讨论】:

正确的错误是这个:netbeans.org/bugzilla/show_bug.cgi?id=245522 和bugs.openjdk.java.net/browse/JDK-8050485。该问题已在 JDK 7u71 和 JDK 8u31 中修复。 我在使用 java 版本 "1.8.0_121" 时遇到了这个问题 @ezadeen 你解决了这个问题?我也一样。 1.8.0_131问题依然存在 还在1.8.0_162,放点盐【参考方案2】:

根据这个GitHub issue,它已被修复。更新到version 1.4 为我解决了这个问题。

【讨论】:

感谢您指出这一点。今天遇到这个问题并更新了VisualVM。现在可以使用了。【参考方案3】:

如果您使用的是 eclipse,请转到 Run/Debug 配置。 从左侧选择您的应用程序并点击Arguments。

在这里您将看到两个文本框。

1. Program Arguments
2. VM Arguments

在 VM 参数中,输入以下命令。 -Xverify:none

点击应用,然后点击运行/调试。

【讨论】:

【参考方案4】:

我发现使用 IntelliJ 的解决方法是编译为 Java 1.6 字节代码。 执行此操作的菜单选项是:文件 - 项目结构,然后将项目语言级别设置为 6。

这使您无法使用仅适用于 Java 7 或 8 的 Java 功能。

【讨论】:

以上是关于尝试分析应用程序时重新定义失败,出现错误 62的主要内容,如果未能解决你的问题,请参考以下文章

尝试重新加载部分时出现断言失败错误

登录屏幕消失并在登录失败时重新出现

GCM 注册失败,出现 1003 错误

Xcode 8 App安装失败,出现未知错误

VS平台出现错误是怎么回事呀

在颤振应用程序中集成 API 会出现错误“程序链接失败”