我正在使用hibernate-jpamodelgen使用maven生成元模型类。
当我运行 mvn clean package时 ,它运行正常,没有任何问题。但是,如果我第二次运行 mvn软件包
(没有清理),则会收到以下异常:
An exception has occurred in the compiler (1.8.0_51). Please file a bug at the Java Developer Connection (http://java.sun.com/webapps/bugreport) after checking the Bug Parade for duplicates. Include your program and the following diagnostic in your report. Thank you.
java.lang.IllegalStateException: endPosTable already set
at com.sun.tools.javac.util.DiagnosticSource.setEndPosTable(DiagnosticSource.java:136)
at com.sun.tools.javac.util.Log.setEndPosTable(Log.java:350)
at com.sun.tools.javac.main.JavaCompiler.parse(JavaCompiler.java:667)
at com.sun.tools.javac.main.JavaCompiler.parseFiles(JavaCompiler.java:950)
at com.sun.tools.javac.processing.JavacProcessingEnvironment$Round.<init>(JavacProcessingEnvironment.java:892)
at com.sun.tools.javac.processing.JavacProcessingEnvironment$Round.next(JavacProcessingEnvironment.java:921)
at com.sun.tools.javac.processing.JavacProcessingEnvironment.doProcessing(JavacProcessingEnvironment.java:1187)
at com.sun.tools.javac.main.JavaCompiler.processAnnotations(JavaCompiler.java:1170)
at com.sun.tools.javac.main.JavaCompiler.compile(JavaCompiler.java:856)
at com.sun.tools.javac.main.Main.compile(Main.java:523)
at com.sun.tools.javac.api.JavacTaskImpl.doCall(JavacTaskImpl.java:129)
at com.sun.tools.javac.api.JavacTaskImpl.call(JavacTaskImpl.java:138)
at org.codehaus.plexus.compiler.javac.JavaxToolsCompiler.compileInProcess(JavaxToolsCompiler.java:125)
at org.codehaus.plexus.compiler.javac.JavacCompiler.performCompile(JavacCompiler.java:169)
at org.apache.maven.plugin.compiler.AbstractCompilerMojo.execute(AbstractCompilerMojo.java:825)
at org.apache.maven.plugin.compiler.CompilerMojo.execute(CompilerMojo.java:129)
at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:132)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:208)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:145)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:116)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:80)
at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build(SingleThreadedBuilder.java:51)
at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:120)
at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:355)
at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:155)
at org.apache.maven.cli.MavenCli.execute(MavenCli.java:584)
at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:216)
at org.apache.maven.cli.MavenCli.main(MavenCli.java:160)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:497)
at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:289)
at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:229)
at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:415)
at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:356)
环境 :
JDK version : 1.8.0_51
Maven version : 3.3
Hibernate version : 4.3.7.Final
我的pom.xml中的代码段:
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-jpamodelgen</artifactId>
<version>4.3.7.Final</vershtml" target="_blank">ion>
<scope>provided</scope>
</dependency>
找到答案!…
这是 3.2 和 3.3 版本的 maven-compiler-plugin中的错误 。
当我第二次运行“ mvn package ”时,先前生成的源目录会在 generate-source 阶段之前添加到源路径,这会导致此
解析器异常 。
切换回maven-compiler-plugin 的旧版本( < 3.2) 可解决 此问题。
请注意,在 maven-compiler-plugin的* 3.0 和 3.1 版本中, 增量编译 被 破坏
了。因此,我更喜欢切换 2.5.1 版本的maven-compiler-plugin。
***
<dependency>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>2.5.1</version>
</dependency>
我正在使用hibernate jpamodelgen使用maven生成元模型类。 当我运行mvn clean软件包时,它运行良好,没有任何问题。但是如果我第二次运行mvn包(没有clean),我会得到以下异常: 环境: 我pom.xml的片段:
问题内容: 我遵循了JPA modelgen 指南,并且能够生成所需的规范元模型。通过此pom设置: 生成的源已在指定目录中正确创建,我必须手动将其指定为eclipse项目类路径中的源才能使用它。当我触发Maven时,日志显示或,并且我仍然可以成功构建。所以我的问题是,在创建元模型时这种预期/正确的行为吗?还是我错过了cofig中的某些内容?谢谢 问题答案: 我也在使用JPA Metamodel
我想知道如何使用Maven和Eclipselink 2.5生成静态元模型。通过将这些行添加到pom中,它工作得很好。运行Eclipselink 2.4时使用xml。 但2.4版之后似乎发生了一些变化,原因如下: 你们能帮帮我吗 B. R.
以下是我在pom中的相关配置.xml: 提前感谢您的帮助。
在我的pom里。xml,我添加了这个依赖项: 当我通过在终端执行“mvn clean install”编译并安装项目时,模型类在以下目录中生成: 然后,如果我从Eclipse导入这个Maven项目,它可以很好地工作,而不会抱怨自动生成的模型类。 但是,如果我不在终端执行“mvn清洁安装”来生成模型类并直接导入清洁项目,Eclipse就不会生成模型类,因此会生成编译错误。 在导入和编译干净的mave
我试图使用ANT生成Eclipse Link JPA元模型 然而,我得到以下错误,这可能是什么原因? 错误的服务配置文件,或在构造处理器对象javax时引发异常。注释。处理。处理者:提供者组织。日食坚持不懈内部的jpa。modelgen。找不到CanonicalModelProcessor