0

最近我正在使用 maven 3.x、Eclipse Juno JavaEE IDE 和 JDK 1.6.0_26。在我的项目中,我在课堂内外都使用了枚举。当我运行 clean build 时出现错误

[ERROR] found   : my.package.MyClass.MyEnum
[ERROR] required: my.package.MyClass.MyEnum

然后我确保my/package/MyClass.java需要先编译所以我添加了

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-compiler-plugin</artifactId>
    <version>2.3.2</version>
    <configuration>
        <source>1.6</source>
        <target>1.6</target>
    </configuration>
    <executions>
        <execution>
            <id>default-compile</id>
            <goals>
                <goal>compile</goal>
            </goals>
            <configuration>
                <excludes>
                    <exclude>**/*.*</exclude>
                </excludes>
                <includes>
                    <include>**/MyClass.java</include>
                </includes>
            </configuration>
        </execution>
        <execution>
            <id>second</id>
            <goals>
                <goal>compile</goal>
            </goals>
            <configuration>
                <includes>
                    <include>**/*</include>
                </includes>
                <excludes>
                    <exclude>**/MyClass.java</exclude>
                </excludes>
            </configuration>
        </execution>
    </executions>
</plugin>

在那之后,希望它不会工作。这对我来说非常烦人。如果我必须在我的应用程序中使用枚举,我将如何克服它。有人试图在他们的博客中证明这是错误 java 1.6.0_26 并在 JDK 7 中修复。如果是这样,则无法迁移到 JDK 7.x。使用 Eclipse JNO Java EE 使用 maven 3.x 解决此问题的任何方法。

package com.formativesoft.mcserp.validator;

public class Validator {

    public enum Lang {
        EN, BN;
    }
}
4

1 回答 1

2

您不需要编译执行噱头。如果您的枚举用于定义它的同一工件中,那么您不需要做任何特别的事情。我猜这只是一些暂时的故障。从您的 pom 配置中删除目标定义排除疯狂,从控制台对您的项目运行 mvn clean install ,几乎可以肯定您不会遇到问题。如果您这样做,请包含错误消息,以便我们进一步帮助您。

于 2013-03-30T11:01:31.553 回答