2

[已解决] 唉,只需要 Project > Clean > Build。使用 Run As > Maven build... 没有。

我正在尝试使用 JavaPoet 根据我创建的注释构建一个枚举,但是我在添加 Maven 依赖项时遇到了麻烦。我成功解析了 log4j2、H2 和 Reflections 依赖项,但无法解析 JavaPoet。

我无法找到任何关于这FATAL ERROR是什么的答案,感谢任何帮助。我正在使用 Eclipse Neon.3,我的笔记本电脑上没有太多 RAM——只有 4GB。这是我的 Maven 构建输出:

[INFO] Scanning for projects...
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] Building My Project 0.0.1-SNAPSHOT
[INFO] ------------------------------------------------------------------------
[INFO] 
[INFO] --- maven-clean-plugin:2.5:clean (default-clean) @ MainClass ---
[INFO] Deleting C:\dev\git\MainClass\target
[INFO] 
[INFO] --- maven-resources-plugin:2.6:resources (default-resources) @ MainClass---
[WARNING] Using platform encoding (Cp1252 actually) to copy filtered resources, i.e. build is platform dependent!
[INFO] Copying 1 resource
[INFO] 
[INFO] --- maven-compiler-plugin:3.5.1:compile (default-compile) @ MainClass
[INFO] Changes detected - recompiling the module!
[WARNING] File encoding has not been set, using platform encoding Cp1252, i.e. build is platform dependent!
[INFO] Compiling 90 source files to C:\dev\git\MainClass\target\classes
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 4.252 s
[INFO] Finished at: 2017-07-08T09:54:56-04:00
[INFO] Final Memory: 15M/169M
[INFO] ------------------------------------------------------------------------
FATAL ERROR in native method: JDWP on getting class status, jvmtiError=JVMTI_ERROR_WRONG_PHASE(112)
JDWP exit error JVMTI_ERROR_WRONG_PHASE(112): on getting class status [util.c:1285]
4

1 回答 1

4

每当我执行 run maven goal clean install 时,我在 Eclipse IDE 中也遇​​到了同样的错误。

构建成功,但随后显示以下错误。

JDWP 退出错误 JVMTI_ERROR_WRONG_PHASE(112):获取类状态 [util.c:1285]

但是惊讶地发现,同样的 Maven 目标在命令提示符下在 Eclipse 之外完美运行。

为了进一步分析,在eclipse中我打开了终端窗口并运行下面的命令来了解java编译器/vm版本

javac -version
java -version

并发现两者都指向略有不同的版本。

在 eclipse.ini 文件中添加以下行解决了这个问题。

-vm
C:\Program Files\Java\jdk1.8.0_91\bin\javaw.exe

确保您已单独添加以上行并在以下行之上

--launcher.appendVmargs
-vmargs

请参阅此链接为 Eclipse 设置正确的路径,现在

C:\Users\tarun.kumar2>java -version
java version "1.8.0_91"
Java(TM) SE Runtime Environment (build 1.8.0_91-b15)
Java HotSpot(TM) 64-Bit Server VM (build 25.91-b15, mixed mode)

C:\Users\tarun.kumar2>javac -version
javac 1.8.0_91

我希望这可以帮助你。

于 2017-11-24T15:58:25.593 回答