Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/303.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java @ConfigurationProperties aspectj maven插件冲突_Java_Spring_Maven_Spring Boot - Fatal编程技术网

Java @ConfigurationProperties aspectj 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

当我在基于aspectj maven插件的maven编译过程中使用
@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
为我解决了问题。