java - maven "cannot find symbol"消息无用

标签 java maven compiler-errors settings

这是一个非常简单的问题,它可能是我不知道的某个地方的设置,但谷歌对这个问题特别没有帮助,给出关于编译错误的结果,而不是如何更改编译错误消息。

当我使用 maven 构建项目时,它会给我错误消息,格式大致如下:

[ERROR]/path/to/source/Main.java:[13,8] 错误:找不到符号

当我使用 ant 或 javac 构建时,它实际上会告诉我它在错误消息中找不到的符号。 maven 给了我一个行号和字符位置,但显示实际符号会更有帮助。上面的行是每个“找不到符号”错误的唯一行。上面或下面没有给出符号的线。我想必须有某种方法让 maven 告诉我这些信息,但我不知道它是什么。我尝试了 -e 选项,因为 mvn 告诉我尝试使用它,但它为错误提供了 maven 回溯,而不是实际符号。

有什么帮助吗?

这是 mvn --version 的输出

Apache Maven 3.0.4 (rNON-CANONICAL_2012-10-24_11-25_mockbuild; 2012-10-24 07:25:04-0400)
Maven home: /usr/share/maven
Java version: 1.7.0_09-icedtea, vendor: Oracle Corporation
Java home: /usr/lib/jvm/java-1.7.0-openjdk-1.7.0.9.x86_64/jre
Default locale: en_US, platform encoding: UTF-8
OS name: "linux", version: "3.6.6-1.fc17.x86_64", arch: "amd64", family: "unix"

这是一个示例(无用)错误消息,与 maven 的输出完全相同(只是缩短了目录):

[INFO] -------------------------------------------------------------
[ERROR] COMPILATION ERROR : 
[INFO] -------------------------------------------------------------
[ERROR] /path/to/source/SoundEngineFilePanel.java:[33,8] error: cannot find symbol
[ERROR]  class SoundEngineFilePanel
/path/to/source/SoundEngineFilePanel.java:[36,8] error: cannot find symbol
[INFO] 2 errors 
[INFO] -------------------------------------------------------------

它找不到的符号是“fakeThing”和“fakeThing2”,而不是 SoundEngineFilePanel。

最佳答案

这是 bug在 Maven 编译器插件中,我认为与 JDK7 相关。在 JDK6 上运行良好。

关于java - maven "cannot find symbol"消息无用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14164386/

相关文章:

c++ - 旧版 MFC 代码 (2005) 无法在 VC 2010 上编译

java - 如何解决找不到 CatalogManager.properties 错误

java - Swing 布局 - 在保持组件尺寸的同时使用网格

java - 在 Swing 中更改实体外观

java - Maven 发布插件 - 如何修改发布项目的版本

java - 忽略依赖 jar 中的 Jackson 2.0 注释

git - 使用 mvn release :prepare, 是否可以指示 Maven 在提交命令的子模块 pom 位置中使用正斜杠?

android - 使用 gradle 4.6 通过终端编译 Android 项目时出错

c++ - 错误 : 'wxGraphicsContext' was not declared in this scope

java - 打印反向链表时出现问题(java)