2016-12-22 24 views
0

在JDK 1.7u52上运行的NetBeans 8.2中有一个Java EE 6项目,在我编译并在IDE中启动时运行良好。然而,当我清理并生成项目,我收到以下错误:编写符合条件的错误JEE 6项目

An annotation processor threw an uncaught exception. 
Consult the following stack trace for details. 
java.lang.RuntimeException: javax.annotation.processing.FilerException: Attempt to recreate a file for type ch.djan.lee.compute.entity.SpaceLog_ 
    at org.eclipse.persistence.internal.jpa.modelgen.CanonicalModelProcessor.process(CanonicalModelProcessor.java:407) 
    at com.sun.tools.javac.processing.JavacProcessingEnvironment.callProcessor(JavacProcessingEnvironment.java:625) 
    at com.sun.tools.javac.processing.JavacProcessingEnvironment.discoverAndRunProcs(JavacProcessingEnvironment.java:554) 
    at com.sun.tools.javac.processing.JavacProcessingEnvironment.doProcessing(JavacProcessingEnvironment.java:699) 
    at com.sun.tools.javac.main.JavaCompiler.processAnnotations(JavaCompiler.java:981) 

注:我工作的标准和eclipsLink 2.4

+0

多少持久单元你在用吗? – bilelovitch

+0

我有三个PU,但问题与持久单元的数量有什么关系! –

回答

0

的解决方案是更新persistence.xml文件像这样的:

<persistence-unit name="first_PU"> 
    <properties> 
    <property name="eclipselink.canonicalmodel.subpackage" value="first"/> 
    </properties> 
</persistence-unit> 

<persistence-unit name="second_PU"> 
    <properties> 
     <property name="eclipselink.canonicalmodel.subpackage" value="second"/> 
    </properties> 
</persistence-unit> 

<persistence-unit name="third_PU"> 
    <properties> 
    <property name="eclipselink.canonicalmodel.subpackage" value="third"/> 
    </properties> 
</persistence-unit> 

和部署项目后,您将获得:

ch.djan.lee.compute.entity.SpaceLog.first 
ch.djan.lee.compute.entity.SpaceLog.second 
ch.djan.lee.compute.entity.SpaceLog.third 
+0

它正在工作的解决方案 –