Skip to content

frgaal compilator throwing an exeption once you use record and in same time having dependency on lombok #9

@ifarafonov

Description

@ifarafonov

Hi, just trying frgaal for my project on java 8. I did a simple implementation of record and failed with compilation error:

java.lang.ClassCastException: lombok.javac.apt.InterceptingJavaFileManager cannot be cast to com.sun.tools.javac.file.JavacFileManager
at com.sun.tools.javac.main.JavaCompiler.compileSecondary(JavaCompiler.java:1745)
at com.sun.tools.javac.main.JavaCompiler.compile(JavaCompiler.java:963)
at com.sun.tools.javac.main.Main.compile(Main.java:317)
at com.sun.tools.javac.main.Main.compile(Main.java:176)
at com.sun.tools.javac.Main.compile2(Main.java:108)
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:498)
at org.frgaal.Main.lambda$compile$1(Main.java:32)
at org.frgaal.AbstractMain.doRun(AbstractMain.java:27)
at org.frgaal.Main.compile(Main.java:29)
at org.frgaal.maven.FrgaalCompiler.compileInProcess(FrgaalCompiler.java:463)
at org.frgaal.maven.FrgaalCompiler.performCompile(FrgaalCompiler.java:172)
at org.apache.maven.plugin.compiler.AbstractCompilerMojo.execute(AbstractCompilerMojo.java:1134)
at org.apache.maven.plugin.compiler.CompilerMojo.execute(CompilerMojo.java:187)
at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:137)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:210)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:156)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:148)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:117)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:81)
at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build(SingleThreadedBuilder.java:56)
at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:128)
at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:305)
at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:192)
at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:105)
at org.apache.maven.cli.MavenCli.execute(MavenCli.java:957)
at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:289)
at org.apache.maven.cli.MavenCli.main(MavenCli.java:193)
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:498)
at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:282)
at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:225)
at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:406)
at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:347)
at org.codehaus.classworlds.Launcher.main(Launcher.java:47)

Tried different lombok versions - no luck :(

Record Code just in case:

public record SettlementLocation (
Integer id,
String clientId,
String name,
String longName,
String country,
Timestamp lastModified,
String modifiedBy,
Boolean isDeleted)
{}

You can easily reproduce the issue - create spring boot project from scratch and implement the record having the dependency on lombok in same time in your pom.

Can anybody check this?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions