如何解决Gradle在编织AspectJ时添加子模块Src路径[ant:iajc] [错误]构建配置错误:错误的sourceroot:/ Users / abcd / mainApp / src / main / java
我为具有以下结构的Java项目设置了多模块。
mainApp
|--> core-module
| |--> src
| |--> build.gradle
|
|--> lib-module
| |--> src
| |--> build.gradle
|--> lib-another-module
| |--> src
| |--> build.gradle
|
|--> settings.gradle
|--> build.gradle
|--> gradle.properties
在我提到的mainApp/build.gradle
中
compileJava {
//dependsOn configurations.ajc.getTaskDependencyFromProjectDependency(true,"compileJava")
doLast{
ant.taskdef( resource:"org/aspectj/tools/ant/taskdefs/aspectjtaskdefs.properties",classpath: configurations.ajc.asPath)
ant.iajc(
maxmem: "1024m",fork: "true",Xlint: "ignore",destDir: sourceSets.main.output.classesDirs.asPath,aspectPath: configurations.aspects.asPath,sourceRootcopyFilter: "**/.svn/*,**/*.java",classpath: configurations.compile.asPath,source: project.sourceCompatibility,target: project.targetCompatibility
){
sourceroots{
sourceSets.main.java.srcDirs.each{
pathelement(location:it.absolutePath)
}
}
}
}
}
我收到[ant:iajc] [error] build config error: bad sourceroot: /Users/abcd/mainApp/src/main/java
的错误消息
如何将sub-module
src指向sourceroots{}
?
解决方法
我可以解决问题。基本上我的根项目没有任何源代码(它只是父Gradle模块容器),因此需要从sourceRoots
sourceroots{
sourceSets.main.java.srcDirs.each{
if(!it.absolutePath.contains("/src/main/java")) {
pathelement(location: it.absolutePath)
}
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。