maven java-8 maven-plugin lombok

maven - Causado por: java.lang.ClassNotFoundException: com.sun.tools.javac.code.TypeTags cuando se usa lombok



java-8 maven-plugin (7)

Tengo la siguiente dependencia en pom.xml:

<dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <version>1.16.8</version> </dependency>

Cuando ejecuto mvn clean install , tengo el siguiente error:

Caused by: java.lang.ClassNotFoundException: com.sun.tools.javac.code.TypeTags at java.lang.ClassLoader.findClass (ClassLoader.java:711) at java.lang.ClassLoader.loadClass (ClassLoader.java:566) at lombok.launch.ShadowClassLoader.loadClass (ShadowClassLoader.java:418)

Traté de usar Java 1.8, 1.9, 1.10 . Y probé lombok 1.6.10, 1.6.12, 1.6.20 . Todos tienen el mismo problema.


Había cambiado la versión de lombok y funcionó para mí.

<dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <version>1.16.22</version> <scope>provided</scope> </dependency>


Resuelto esto por:

1) descargue lombok-edge.jar,

2) usando la siguiente dependencia:

<dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <version>1.16.21</version> <scope>system</scope> <systemPath>/Users/xxx/Downloads/lombok-edge.jar</systemPath> </dependency>


Se resolvió el problema actualizando la versión de lombok del 1.16.18 al 1.16.22. Sospecho que cualquier versión compatible superior a .22 podría funcionar.


Siempre logré resolver este problema con numerosos proyectos antiguos que usaban una versión anterior de Lombok simplemente actualizando la versión de Lombok

Con esta actualización de Lombok; para proyectos con mucha memoria durante las fases de ejecución de la prueba, también tuve que comenzar a especificar configuraciones de memoria para maven-surefire-plugin que generalmente parece necesitar ahora más memoria para evitar la Execution default-test of goal org.apache.maven.plugins:maven-surefire-plugin:2.18.1:test failed: The forked VM terminated without properly saying goodbye. VM crash or System.exit called? Execution default-test of goal org.apache.maven.plugins:maven-surefire-plugin:2.18.1:test failed: The forked VM terminated without properly saying goodbye. VM crash or System.exit called? errores

Vea a continuación, por ejemplo, las configuraciones de pom.xml de trabajo

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> </properties> ... <lombok.version>1.18.2</lombok.version> ... </properties> <dependencies> ... <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <version>${lombok.version}</version> <scope>provided</scope> </dependency> ... </dependencies> ... <build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-surefire-plugin</artifactId> <configuration> <!--Extra memory to prevent jvm crash during heavy Integration/unit test with newer lombok and jdk8--> <argLine>-Xmx1024m -XX:MaxPermSize=256m</argLine> </configuration> </plugin> ... </plugins> </build> </project>


Soy capaz de resolver el problema en mi proyecto maven con Java-10 y Lombok 1.18.2.

<dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <version>1.18.2</version> <scope>provided</scope> </dependency>


Tengo el mismo problema y lo soluciono agregando este código en pom.xml

<dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok-maven-plugin</artifactId> <version>1.18.0.0</version> </dependency>


mi proyecto usa java1.8, y este problema se ha resuelto usando lombok 1.18.4.