最近では、maven 3.x、JDK 1.6.0_26 を使用した Eclipse Juno JavaEE IDE を使用しています。私のプロジェクトのどこかで、クラスの内外で列挙型を使用しました。クリーンビルドを実行すると、エラーが表示されます
[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;
}
}