AspectJ-Maven-Plugin编译警告问题及依赖版本调整咨询
解决AspectJ-Maven-Plugin相关编译警告
处理父项目(pom打包类型)的警告
父项目打包类型为pom,本身不需要执行编译逻辑,直接给AspectJ插件添加跳过配置即可消除警告。在父pom的build/plugins中调整插件配置:
<plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>aspectj-maven-plugin</artifactId> <version>1.14.0</version> <!-- 适配JDK8的稳定版本 --> <configuration> <skip>true</skip> <!-- 跳过父项目的AspectJ编译 --> <complianceLevel>1.8</complianceLevel> <source>1.8</source> <target>1.8</target> <aspectLibraries> <!-- 按需保留你的切面依赖配置 --> </aspectLibraries> </configuration> <executions> <execution> <goals> <goal>compile</goal> <goal>test-compile</goal> </goals> </execution> </executions> <dependencies> <dependency> <groupId>org.aspectj</groupId> <artifactId>aspectjtools</artifactId> <version>1.9.9.1</version> <!-- 完全适配JDK8的版本 --> </dependency> </dependencies> </plugin>
如果父pom用pluginManagement统一管理插件,只需在需要AspectJ编译的子模块中引入该插件,父模块无需配置执行逻辑。
处理myweb-backend模块无源码的警告
如果该模块确实没有业务源码,直接在其pom中给AspectJ插件添加跳过配置:
<build> <plugins> <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>aspectj-maven-plugin</artifactId> <configuration> <skip>true</skip> <!-- 跳过无源码模块的编译检查 --> </configuration> </plugin> </plugins> </build>
如果该模块根本不需要AspectJ功能,直接移除对该插件的引入即可彻底消除警告。
版本适配说明
- AspectJ-Maven-Plugin选1.14.0:是支持JDK8的最新稳定版本之一,1.15+版本开始要求JDK11+,完全适配你的环境。
- AspectJtools用1.9.9.1:与JDK8完全兼容,避免版本不匹配导致的隐性问题。
内容的提问来源于stack exchange,提问作者rob
相关产品推荐
相关产品推荐

