java: Annotation processing is not supported for module cycles. Please ensure that all modules from cycle [ehl-system,ehl-framework] are excluded from annotation processing
时间: 2023-10-25 10:24:25 浏览: 44
这个问题的原因是在 Java 9 及以上版本中,模块化系统被引入,它会对模块之间的依赖关系进行检查和限制。在你的应用程序中,模块 `ehl-system` 和 `ehl-framework` 存在循环依赖,导致注解处理器无法正常工作。
要解决这个问题,你需要将这两个模块从注解处理器中排除掉。你可以在 `module-info.java` 文件中添加以下代码:
```
module your.module.name {
// ...
// Exclude modules from annotation processing
opens com.example to
jdk.compiler,
ehl-system,
ehl-framework;
}
```
在上面的代码中,`your.module.name` 应该替换为你的模块名,`com.example` 应该替换为你的包名。通过将需要排除的模块名添加到 `opens` 语句中,就可以避免模块循环依赖导致的问题了。
相关问题
java: Annotation processing is not supported for module cycles. Please ensure that all modules from cycle [ehl-flowable,ehl-framework,ehl-system] are excluded from annotation processing
这个问题是由于在模块之间存在循环依赖,导致注解处理器无法正常工作。解决方法是排除这个循环依赖,有以下几种方式:
1. 调整依赖关系,避免循环依赖;
2. 排除其中一个模块的注解处理器;
3. 在项目的 build.gradle 文件中,对循环依赖的模块进行 exclude:
```gradle
compileOptions {
// 排除模块循环依赖
annotationProcessorOptions {
arguments += ["excludeModules": "ehl-flowable,ehl-framework,ehl-system"]
}
}
```