Eclipse无法识别生成的类

时间:2019-03-21 08:17:05

标签: java eclipse maven eclipse-plugin

我已经使用Maven插件在我的项目中生成类。但是,即使在尝试从项目构建路径显式填充它之后,eclipse也无法识别它。它说,

“ AbcBaseListener无法解析为类型”

enter image description here

enter image description here

enter image description here

enter image description here

enter image description here 项目自动构建功能也已启用。

1 个答案:

答案 0 :(得分:1)

检查2件事:

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;
}