高版本gradle集成aspectj

之前低版本gradle集成aspectj可以成功,但是最近用gradle7.3以上去集成时一直报错,提示找不到插件。尝试了很久,最终找到了解决方案,这里记录下。

由于android-aspectj 原作者不维护了,现在高版本的支持插件是

arduino 复制代码
'io.github.wurensen.android-aspectjx'

下面是新插件具体的集成步骤:

  • 在project 工程目录下的build.gradle中添加
arduino 复制代码
classpath 'io.github.wurensen:gradle-android-plugin-aspectjx:3.3.2'
  • 在app的build.gradle中添加,注意一定要放在application插件的下方,否则会报错
arduino 复制代码
apply plugin: 'io.github.wurensen.android-aspectjx'
  • 在library的build.gradle中添加(组件开发模式中,需要放在需要开启aop的模块中)
arduino 复制代码
implementation 'org.aspectj:aspectjrt:1.9.7'

下面是全部代码:

project build.gradle

arduino 复制代码
buildscript {
    ext.kotlin_version = '1.7.10'
    repositories {
        mavenCentral()

        //jcenter()
    }
    dependencies {
        
        classpath 'com.android.tools.build:gradle:7.3.1'
       
        classpath 'org.jetbrains.kotlin:kotlin-gradle-plugin:2.0.10'
       
        classpath 'io.github.wurensen:gradle-android-plugin-aspectjx:3.3.2'
    }
}

app build.gradle

arduino 复制代码
apply plugin: 'com.android.application'
apply plugin: 'io.github.wurensen.android-aspectjx'
apply plugin: 'kotlin-android'

android {
    
    compileSdkVersion 34
    buildToolsVersion "34.0.0"
    defaultConfig {
        targetSdkVersion 34
        minSdkVersion 31
       
    }
 
    compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_8
        targetCompatibility JavaVersion.VERSION_1_8
    }
    **** 
   
}
 dependencies {
     **** 
 }

library build.gradle

bash 复制代码
plugins {
    id 'com.android.library'
    id 'org.jetbrains.kotlin.android'
}

android {
    namespace 'com.xiaomi.xms.ai.recorder'
    compileSdk 34

    defaultConfig {
        minSdk 31

        testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
        consumerProguardFiles "consumer-rules.pro"
    }

   *****
}

dependencies {
    implementation 'androidx.core:core-ktx:1.13.1'
    implementation 'org.aspectj:aspectjrt:1.9.7'
}
相关推荐
恋猫de小郭1 天前
Android Studio 正式版 10 周年回顾,承载 Androider 的峥嵘十年
android·ide·android studio
vistaup3 天前
Android Studio 新版本24.2.2 运行后自动切到 LogCat
android·ide·android studio
我是大佬的大佬4 天前
有关Android Studio的安装与配置并实现helloworld(有jdk的安装与配置)(保姆级教程)
android·android studio·软件工程
黄油奥特曼7 天前
Flutter解决macbook M芯片Android Studio中不显示IOS真机的问题
flutter·ios·android studio·m芯片
爱踢球的程序员-18 天前
Android:View的滑动
android·kotlin·android studio
掉落的牙8 天前
android studio本地打包后,无法热更,无法执行换包操作,plus.runtime.install没有弹窗
前端·javascript·android studio
susu10830189118 天前
android studio搭建NDK环境,使用JNI (Java 调 C) 二 通过CMake
android·java·android studio
苏金标9 天前
android studio生成jsk
android·android studio
玫瑰花开一片一片9 天前
Flutter 给安卓签名时 使用 Android Studio 找不到 Generate Signed Bundle/APK 菜单问题
android·flutter·android studio
aloneboyooo10 天前
Android Studio安装配置
android·ide·android studio