Android Studio2.2.3配置androidannotation框架

配置版本及链接

Android Studio版本2.2.3: http://www.android-studio.org/

Android annotation官网:https://github.com/excilys/androidannotations

Android annotation官网中有提到在Gradle中要怎么配置:
https://github.com/excilys/androidannotations/wiki/Building-Project-Gradle

这里简单记录Android annotation配置过程,分享下配置过程中遇到问题及解决方法。

  1. 在Android Studio中新建普通工程(这里命名AnnotationDemo)
  2. 主要修改如下2个build.gradle文件:

project的 build.gradle :
添加代码内容: classpath ‘com.neenbedankt.gradle.plugins:android-apt:1.8+’

// Top-level build file where you can add configuration options common to all sub-projects/modules.

buildscript {
    repositories {
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:2.2.3'
        //配置Android annotations
        classpath 'com.neenbedankt.gradle.plugins:android-apt:1.8+'
    }
}

allprojects {
    repositories {
        jcenter()
    }
}

task clean(type: Delete) {
    delete rootProject.buildDir
}

Module的 build.gradle (本dem中Module是app):
该模块修改处,三处配置之外,还有一处对testCompile的注释。

apply plugin: 'com.android.application'
//配置【1】Android annotations
apply plugin: 'android-apt'
def AAVersion = '4.0+'

android {
    compileSdkVersion 25
    buildToolsVersion "25.0.2"
    defaultConfig {
        applicationId "com.annotationdemo"
        minSdkVersion 19
        targetSdkVersion 25
        versionCode 1
        versionName "1.0"
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
        exclude group: 'com.android.support', module: 'support-annotations'
    })
    compile 'com.android.support:appcompat-v7:25.0.0'
    //被注解
    //testCompile 'junit:junit:4.12'

    //配置【2】Android annotations
    apt "org.androidannotations:androidannotations:$AAVersion"
    compile "org.androidannotations:androidannotations-api:$AAVersion"
}

//配置【3】Android annotations
apt {
    arguments {
        androidManifestFile variant.outputs[0].processResources.manifestFile
        resourcePackageName 'com.annotationdemo'
    }
}
  1. 修改AndroidManifest.xml文件。将
<activity android:name=".MainActivity">修改为<activity android:name=".MainActivity_">

此时配置完成,编译工程,会出现如下错误。

Information:Gradle tasks [:app:generateDebugSources, :app:mockableAndroidJar, :app:prepareDebugUnitTestDependencies, :app:generateDebugAndroidTestSources, :app:compileDebugSources, :app:compileDebugUnitTestSources, :app:compileDebugAndroidTestSources]
C:\Users\Desktop\test\AnnotationDemo\app\src\test\java\com\annotationdemo\ExampleUnitTest.java
Error:(3, 17) 错误: 程序包org.junit不存在
Error:(4, 24) 错误: 程序包org.junit不存在
Error:(12, 6) 错误: 找不到符号
符号:Test
位置:ExampleUnitTest
Error:(14, 9) 错误: 找不到符号
符号:   方法 assertEquals(int,int)
位置:ExampleUnitTest
Error:Execution failed for task ':app:compileDebugUnitTestJavaWithJavac'.
> Compilation failed; see the compiler error output for details.
Information:BUILD FAILED
Information:Total time: 2.725 secs
Information:5 errors
Information:0 warnings
Information:See complete output in console

这是因为注释了testCompile引起的,解决办法,将测试类中相关代码注释。路径为/app/src/test/java/【包名】/ExampleUnitTest.java。修改如下:

package com.annotationdemo;

//import org.junit.Test;
//import static org.junit.Assert.*;

/**
 1. Example local unit test, which will execute on the development machine (host).
 2.  * @see <a href="http://d.android.com/tools/testing">Testing documentation</a>
 */
public class ExampleUnitTest {
/*    @Test
    public void addition_isCorrect() throws Exception {
        assertEquals(4, 2 + 2);
    }*/
}

解决上面问题,程序可以正常编译了。但是还是不能正常运行,修改MainActivity文件。因为使用androidannotation框架,需要对使用的Activity进行标注,使用@EActivity。MainActivity修改如下:

package com.annotationdemo;

import android.support.v7.app.AppCompatActivity;

import org.androidannotations.annotations.EActivity;

@EActivity(R.layout.activity_main)
public class MainActivity extends AppCompatActivity {
/*
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
    }*/
}
完成之后编译即可运行。

~遇到问题及解决

=====

  1. A problem occurred configuring project ':app'.
    Cannot get property 'processResources' on null object

    可能有2个原因:
    Module中build.gradle的apt配置不正确。
    按上文介绍的配置即可。
    未注释testCompile ‘junit:junit:4.12’
    特别是第二条,很难查到。
  2. unResolved “MainActivity_”, 讲的是无法解析这个Activity。
    原因在于没有是有@EActivity对Activity标记。

END

#

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
对于Nacos 2.2.3的配置,你可以按照以下步骤进行操作: 1. 首先,你需要下载并安装Nacos 2.2.3。你可以从Nacos官方网站(https://nacos.io/)下载适合你的操作系统的安装包。 2. 下载完成后,解压安装包,并进入解压后的目录。 3. 在Nacos的配置文件目录下,可以找到一个名为 "application.properties" 的文件。这个文件包含了Nacos的基本配置信息。 4. 打开 "application.properties" 文件,你可以根据你的需求进行配置。其中一些常用的配置项包括: - server.port:Nacos服务器的监听端口,默认为8848。 - spring.datasource.platform:指定数据库类型,可选值为mysql、oracle、sqlserver等。 - spring.datasource.url:数据库连接URL。 - spring.datasource.username:数据库用户名。 - spring.datasource.password:数据库密码。 还有其他一些配置项,你可以根据需要进行调整。 5. 配置完成后,保存文件。 6. 接下来,你可以启动Nacos服务器。在命令行中进入Nacos的bin目录,并执行以下命令(Windows环境): ``` startup.cmd -m standalone ``` 在Linux环境中,执行以下命令: ``` sh startup.sh -m standalone ``` Nacos服务器将会启动,并开始监听指定的端口。 7. 最后,在浏览器中访问 http://localhost:8848/nacos,你将会看到Nacos的管理界面。在这里,你可以进行更多的配置操作,如创建命名空间、添加配置等。 这些是Nacos 2.2.3的基本配置步骤,根据你的具体需求,你可以进一步调整和扩展Nacos的功能。希望对你有所帮助!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值