您的位置:首页 > 移动开发 > Objective-C

Error:Unable to find method 'org.gradle.api.tasks.TaskInputs.file(Ljava/lang/Object;)Lorg/gradle/api

2017-06-07 02:15 696 查看
用过GreenDao 的都晓得;他的强大不是咱们个人写个简单通过继承SQLiteOpenHelper实现数据库操作能比的;因为这根本不是一个量级上的啊,O(∩_∩)O哈哈~

话不多说:开搞…

AndoridStudio配置GreenDao报错:

Error:Unable to find method 'org.gradle.api.tasks.TaskInputs.file(Ljava/lang/Object;)Lorg/gradle/api/tasks/TaskInputFilePropertyBuilder;'.


如图:



两种在andorid studio配置GreenDao:

第一种配置:

(个人未成功,给出解决方案。)

说明:降低版本后可以成功,具体看下面;

GreenDao库版本:3.2.2 ,配置步骤如下:

配置Gradle:

A:配置工程目录下build.gradle:

(注意:是工程下的build不是app下的build)

添加GreenDao插件支持,要添加的内容后面都已经加上了简单注释:

buildscript {
repositories {
jcenter()
mavenCentral() // 添加远程仓库地址
}
dependencies {
classpath 'com.android.tools.build:gradle:2.3.2'
classpath 'org.greenrobot:greendao-gradle-plugin:3.2.2' // 添加插件 更好支持GreenDao
}
}

allprojects {
repositories {
jcenter()
}
}

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


之后 右上角Sync Now ,AS会自动下载插件–>下载OK.

B:配置项目(app)下的build.gradle

添加应用插件依赖;

apply plugin: ‘org.greenrobot.greendao’ // 添加应用依赖插件


添加库文件

compile ‘org.greenrobot:greendao:3.2.2’ // 添加库


C:初始化GreenDao配置

按照官方的说法,我们无需任何其他配置,但是,数据库版本这个你得考虑下吧,当然,如果也不想考虑,那就使用默认的(默认版本为1)。

// 配置GreenDao基本参数
greendao {
schemaVersion 1 //当前数据库版本
}


配置参数说明(可以略过…):

schemaVersion:当前版本的数据库模式。这被OpenHelpers类用于在模式版本之间迁移。如果更改了实体/数据库模式,则必须增加该值。默认为1。

daoPackage:生成的Dao,DaoMaster和DaoSession的包名称。 默认为源实体的包名称。

targetGenDir:生成源应存储在的位置。 默认为构建目录( build / generated / source / greendao)中生成的源文件夹。

generateTests: 设置为true以自动生成单元测试。

targetGenDirTests: 应存储生成的单元测试的基本目录。默认为 src / androidTest / java。

配置完成后大致的项目(app中的bulid)内容如下:

apply plugin: 'com.android.application'
apply plugin: 'org.greenrobot.greendao' // 添加应用依赖插件

android {
// 省略部分内容...
}

// 配置GreenDao基本参数 greendao { schemaVersion 1 //当前数据库版本 }

dependencies {
// 省略部分内容...
compile 'org.greenrobot:greendao:3.2.2' // 添加库
}


OK;这种配置到这里就结束了;But 这种配置个人好像 报错了:

报错的代码就是刚开始时提过的:

Error:Unable to find method 'org.gradle.api.tasks.TaskInputs.file(Ljava/lang/Object;)Lorg/gradle/api/tasks/TaskInputFilePropertyBuilder;'.


给出一种个人参考后没有解决的方案:有哪位朋友有解决的;欢迎留言:拜谢。

网上的解决方式:

A:需要在官网:https://services.gradle.org/distributions/中下载了gradle-3.5-all版本;个人下载后解压放到C盘下的…gradle/wapper/dists下如下图:

并在Android studio中file->settings->build,execution,deployment->Gradie

如图:



这个时候重新bulid项目;结果就两种:

a:解决 : 很好、很 幸运。

b:没有解决并且出现新的报错如:

org.gradle.api.internal.tasks.DefaultTaskInputs$TaskInputUnionFileCollection cannot be ca...


这个报错解决一般:把后面的版本号改为之前你的做APP正常能跑的版本号就行。

But 改成之前运行的又出现那个错误了;好纠结…..

重点来了——个人的解决方式——

配置一的解决方案

在“第一种配置”的基础上降低GreenDao版本即可正常运行

A:修改配置工程目录下build.gradle:

把:

classpath 'org.greenrobot:greendao-gradle-plugin:3.2.2' // 添加插件 更好支持GreenDao


改成:

classpath 'org.greenrobot:greendao-gradle-plugin:3.0.0' // 添加插件 更好支持GreenDao


B:修改配置项目(app)下的build.gradle

把:

compile ‘org.greenrobot:greendao:3.2.2’ // 添加库


降低版本为:

compile 'org.greenrobot:greendao:3.0.1'


之后 右上角Sync Now ,AS会自动下载插件–>下载OK.

—————–测试 完美运行—————————

第二种配置(正常运行):

首先 把“第一种配置”的内容全部去掉;恢复到 添加GreenDao前的状态:

然后直接在:项目(app)的build中直接添加:

A:添加插件:

apply plugin: 'org.greenrobot.greendao' // 添加应用依赖插件


B:依赖+配置:

// 配置GreenDao基本参数
greendao {
schemaVersion 1 //当前数据库版本
}

dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')
compile 'com.android.support:appcompat-v7:23.2.1'
//略......
//TJ:GreenDao 数据库加载库
compile 'org.greenrobot:greendao:3.0.1'

}
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'org.greenrobot:greendao-gradle-plugin:3.0.0'
}
}


添加后的全部代码如:


apply plugin: 'com.android.application'
apply plugin: 'org.greenrobot.greendao' // 添加应用依赖插件

android {
//略......
}

// 配置GreenDao基本参数 greendao { schemaVersion 1 //当前数据库版本 }

dependencies {
//略......
//TJ:GreenDao 数据库加载库
compile 'org.greenrobot:greendao:3.0.1'
// compile 'org.greenrobot:greendao:3.2.2'
testCompile 'junit:junit:4.12'
}
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'org.greenrobot:greendao-gradle-plugin:3.0.0'
}
}


个人配置如图:



说的有点多了O(∩_∩)O哈哈~

两种方式成功的实质是:降低了 GreenDao版本 ;

第一种配置:降低版本 ,可以正常运行;

第二种配置:和配置一同理;只是把所有的配置放在了项目app中了。

到这里 大家应该就能成功添加 GreenDao库到项目中;可以开启GreenDao 之旅了….
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐