Java @ConfigurationProperties aspectj maven插件冲突
当我在基于aspectj maven插件的maven编译过程中使用Java @ConfigurationProperties aspectj maven插件冲突,java,spring,maven,spring-boot,Java,Spring,Maven,Spring Boot,当我在基于aspectj maven插件的maven编译过程中使用@ConfigurationProperties时,会收到以下错误消息: [信息]显示类型为:[错误, 警告,失败][警告]字段值处理 @不支持ConfigurationProperty元数据: [错误]内部编译器错误:java.lang.IllegalStateException: 无法在处写入元数据 org.springframework.boot.configurationprocessor.ConfigurationMet
@ConfigurationProperties
时,会收到以下错误消息:
[信息]显示类型为:[错误,
警告,失败][警告]字段值处理
@不支持ConfigurationProperty元数据:
[错误]内部编译器错误:java.lang.IllegalStateException:
无法在处写入元数据
org.springframework.boot.configurationprocessor.ConfigurationMetadataAnnotationProcessor.writeMetaData(ConfigurationMetadataAnnotationProcessor.java:367)
以下是我的pom设置:
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>aspectj-maven-plugin</artifactId>
<version>1.8</version>
<configuration>
<forceAjcCompile>true</forceAjcCompile>
<source>${java.version}</source>
<target>${java.version}</target>
<Xlint>ignore</Xlint>
<complianceLevel>${java.version </complianceLevel>
<showWeaveInfo>true</showWeaveInfo>
<encoding>${project.build.sourceEncoding}</encoding>
<verbose>true</verbose>
<!--<aspectLibraries/>-->
</configuration>
<executions>
<execution>
<goals>
<goal>compile</goal>
<goal>test-compile</goal>
</goals>
</execution>
</executions>
</plugin>
org.codehaus.mojo
aspectj maven插件
1.8
真的
${java.version}
${java.version}
忽视
${java.version
真的
${project.build.sourceEncoding}
真的
编译
测试编译
解决方案是什么?试试这个:
这两种解决方案都有效。
我确实错过了在#4825中提出的aspectj maven插件中的
或者在maven编译器插件中添加none
或者将两者相加
原因是配置元数据处理器尝试使用Filer.getResource读取其输出资源,并在稍后的Filer.createResource上遇到etc/ajc错误
一个解决方法可能是在通过ajc编译之前删除META-INF/spring-configuration-metadata.json。然而,这是一个糟糕的解决方案,在基于Maven的项目中无法轻松实现。看起来应该有所帮助。它与stacktrace完全相同,所以我想知道为什么它对您不起作用。多亏了Stéphane Nicoll!!!我猜到您了再看一眼,这就为您解决了问题。我创建此文档是为了澄清文档。使用任何一种解决方案,方面都不再编织。您确实消除了构建错误,但如果方面没有编织,这也不是什么解决方案。添加
none
为我解决了问题。