java - Eclipse 无法识别生成的类
问题描述
我已经使用 Maven 插件在我的项目中生成类。然而,即使在尝试从项目构建路径中显式填充它之后,eclipse 也无法识别它。它说,
“AbcBaseListener 无法解析为类型”
解决方案
检查两件事:
1)
这里的重要提示是“类文件夹”。Eclipse 需要.class
文件,源代码将被忽略。
要解决此问题,请将此插件添加到您的 POM:
<build>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>build-helper-maven-plugin</artifactId>
<executions>
<execution>
<goals>
<goal>add-source</goal>
</goals>
<configuration>
<sources>
<source>target/generated-sources/</source>
</sources>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
并更新项目(Maven -> Update ...)。
另一种选择是手动将另一个源文件夹添加到构建路径,但每当 m2e 从 POM 更新项目配置时,它就会丢失。
2)确保您生成的文件具有包名;
在语法 Abc之后在 g4 文件中使用以下代码;
@header {
package antlr4;
}
推荐阅读
- git - GitLab 页面 - 如何使用任何 repo 名称?
- javascript - jquery将元素添加到第一个孩子?
- c++ - 将二维数组传递给 C++ 中的函数时出错
- woocommerce - 当我将产品添加到购物车时,产品价格变为零(0 美元)
- angular - 使用 angular8 创建的 Outlook 365 加载项无法删除使用 ngx-cookie-service 创建的 cookie
- flutter - 可变大小的 ListView 或 SingleChildScrollView
- matrix - 对 Octave 中的每个单元格应用一个函数
- php - Laravel 5.8:尝试使用从数据库中提取的数据来制作 where 模型
- reactjs - 一个数组中的所有复选框值
- r - Shiny + Leaflet反应功能不起作用