使用@Aspect做android AOP开发遇到的Android aspect No such property: project for class:

来源:互联网 发布:万代告淘宝 编辑:程序博客网 时间:2024/06/06 02:12
android.libraryVariants.all { variant ->LibraryPlugin plugin = project.plugins.getPlugin(LibraryPlugin)JavaCompile javaCompile = variant.javaCompilejavaCompile.doLast {    String[] args = ["-showWeaveInfo",                     "-1.5",                     "-inpath", javaCompile.destinationDir.toString(),                     "-aspectpath", javaCompile.classpath.asPath,                     "-d", javaCompile.destinationDir.toString(),                     "-classpath", javaCompile.classpath.asPath,                     "-bootclasspath", plugin.project.android.bootClasspath.join(            File.pathSeparator)]    MessageHandler handler = new MessageHandler(true);    new Main().run(args, handler)    def log = project.logger    for (IMessage message : handler.getMessages(null, true)) {        switch (message.getKind()) {            case IMessage.ABORT:            case IMessage.ERROR:            case IMessage.FAIL:                log.error message.message, message.thrown                break;            case IMessage.WARNING:            case IMessage.INFO:                log.info message.message, message.thrown                break;            case IMessage.DEBUG:                log.debug message.message, message.thrown                break;        }    }}


在com.android.tools.build:gradle升级到2.3.0之后,会报错
Android aspect No such property: project for class: com.android.build.gradle.LibraryPlugin
因为LibraryPlugin没有project这个属性,需要把plugin.project.android.bootClasspath修改为android.bootClasspath



阅读全文
0 0