Java 龙目山没有';不能使用SpringBootMaven插件
我有Spring boot应用程序和下一个插件和依赖项:Java 龙目山没有';不能使用SpringBootMaven插件,java,spring-boot,lombok,Java,Spring Boot,Lombok,我有Spring boot应用程序和下一个插件和依赖项: <!--...--> <dependency> <groupId>org.springframework.security.oauth</groupId> <artifactId>spring-security-oauth2</artifactId> </dependency> <dependency> <gro
<!--...-->
<dependency>
<groupId>org.springframework.security.oauth</groupId>
<artifactId>spring-security-oauth2</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.16.8</version>
<scope>provided</scope>
</dependency>
<!--...-->
<build>
<finalName>service-api</finalName>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-assembly-plugin</artifactId>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>attached</goal>
</goals>
<configuration>
<descriptors>
<descriptor>service-api.xml</descriptor>
</descriptors>
<appendAssemblyId>false</appendAssemblyId>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>com.alexecollins.docker</groupId>
<artifactId>docker-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
及
因此,当我从插件运行spring boot:run,甚至是从一个简单的命令mvn compile运行时,我遇到了下一个错误:
[错误]无法执行目标
插件:maven编译器插件:3.1:编译
项目服务api上的(默认编译):编译失败:
编译失败:[错误]
D:\Projects\?????\service api\src\main\java\TestCall.java:[7,-1]
[错误]1。错误
D:\Projects\?????\service api\src\main\java\TestCall.java
(在第7行)[ERROR]dto.setTestStr(“我的测试字符串”);[错误]
^^^^^^^^^^[错误]方法setTestStr(字符串)未为
键入TestDto[ERROR]-----------[ERROR]1个问题(1个错误)[ERROR]
[错误]发现1个错误和0个警告
似乎lombok的功能在spting插件上不起作用。
但是,如果我使用标准的maven编译器插件(3.5.1版),一切都正常工作。但现在我们想要使用SpringBoot嵌入式容器,我们还没有准备好更改构建工作流。
有没有可能解决这个问题?可能我应该包括一些特殊的依赖项或类似的东西?由于Lombok生成一些样板代码,所以您不必这样做,因此必须有一种方法来初始化这一代。在你的IDE中,你有一个插件可以做到这一点。但是,对于Maven构建,您需要一个构建步骤,告诉Maven应该生成相关代码(在构建部分中):
org.projectlombok
.由于Lombok生成了一些样板代码,因此您不必这样做,因此必须有一种方法来初始化此生成。在你的IDE中,你有一个插件可以做到这一点。但是,对于Maven构建,您需要一个构建步骤,告诉Maven应该生成相关代码(在构建部分中):
org.projectlombok
.问题出在包含下一个插件的父pom中:
<pluginManagement>
<plugins>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<compilerId>groovy-eclipse-compiler</compilerId>
</configuration>
<dependencies>
<dependency>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy-eclipse-compiler</artifactId>
<version>2.9.2-01</version>
</dependency>
<dependency>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy-eclipse-batch</artifactId>
<version>2.4.3-01</version>
</dependency>
</dependencies>
</plugin>
</plugins>
</pluginManagement>
现在我的groovy eclipse编译器插件是:
<pluginManagement>
<plugins>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<compilerId>groovy-eclipse-compiler</compilerId>
<verbose>true</verbose>
<fork>true</fork>
<compilerArguments>
<javaAgentClass>lombok.launch.Agent</javaAgentClass>
</compilerArguments>
</configuration>
<dependencies>
<dependency>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy-eclipse-compiler</artifactId>
<version>2.9.2-01</version>
</dependency>
<dependency>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy-eclipse-batch</artifactId>
<version>2.4.3-01</version>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.16.8</version>
</dependency>
</dependencies>
</plugin>
</plugins>
</pluginManagement>
maven编译器插件
groovy eclipse编译器
真的
真的
lombok.launch.Agent
org.codehaus.groovy
groovy eclipse编译器
2.9.2-01
org.codehaus.groovy
groovy eclipse批处理
2.4.3-01
org.projectlombok
龙目
1.16.8
问题出在包含下一个插件的父pom中:
<pluginManagement>
<plugins>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<compilerId>groovy-eclipse-compiler</compilerId>
</configuration>
<dependencies>
<dependency>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy-eclipse-compiler</artifactId>
<version>2.9.2-01</version>
</dependency>
<dependency>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy-eclipse-batch</artifactId>
<version>2.4.3-01</version>
</dependency>
</dependencies>
</plugin>
</plugins>
</pluginManagement>
现在我的groovy eclipse编译器插件是:
<pluginManagement>
<plugins>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<compilerId>groovy-eclipse-compiler</compilerId>
<verbose>true</verbose>
<fork>true</fork>
<compilerArguments>
<javaAgentClass>lombok.launch.Agent</javaAgentClass>
</compilerArguments>
</configuration>
<dependencies>
<dependency>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy-eclipse-compiler</artifactId>
<version>2.9.2-01</version>
</dependency>
<dependency>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy-eclipse-batch</artifactId>
<version>2.4.3-01</version>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.16.8</version>
</dependency>
</dependencies>
</plugin>
</plugins>
</pluginManagement>
maven编译器插件
groovy eclipse编译器
真的
真的
lombok.launch.Agent
org.codehaus.groovy
groovy eclipse编译器
2.9.2-01
org.codehaus.groovy
groovy eclipse批处理
2.4.3-01
org.projectlombok
龙目
1.16.8
如果使用支持JSR 269可插入注释处理API的编译器,则不需要该插件。这是使用lombok的标准方式。这个插件需要生成扩展源代码。我认为添加临时生成的源代码是个坏主意。正如官方网站上所说,在编译项目期间,我只需要在类pass中有一个lomok lib:如果使用支持jsr269可插入注释处理API的编译器,则不需要该插件。这是使用lombok的标准方式。这个插件需要生成扩展源代码。我认为添加临时生成的源代码是个坏主意。正如官方网站上所说,在编译项目的过程中,我只需要在类pass中有一个lomok lib:通过生成一个新的boot(web+lombok)maven项目,并在其中放入一个简单的lombok数据类,它工作得很好。是生成的pom(未触及)和java源代码(添加了数据类),spring boot:run
按预期打印“hello”。问题是我有一个带有groovy eclipse编译器插件的父pom。因此,我在本主题中找到了如何为lombok配置它:通过生成一个新的引导(web+lombok)maven项目,并在其中放入一个简单的lombok数据类,它工作得很好。是生成的pom(未触及)和java源代码(添加了数据类),spring boot:run
按预期打印“hello”。问题是我有一个带有groovy eclipse编译器插件的父pom。因此,我在本主题中找到了如何为lombok配置它:
<pluginManagement>
<plugins>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<compilerId>groovy-eclipse-compiler</compilerId>
<verbose>true</verbose>
<fork>true</fork>
<compilerArguments>
<javaAgentClass>lombok.launch.Agent</javaAgentClass>
</compilerArguments>
</configuration>
<dependencies>
<dependency>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy-eclipse-compiler</artifactId>
<version>2.9.2-01</version>
</dependency>
<dependency>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy-eclipse-batch</artifactId>
<version>2.4.3-01</version>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.16.8</version>
</dependency>
</dependencies>
</plugin>
</plugins>
</pluginManagement>