AndroidDev 板


LINE

请教gradle高手,有三个module app和lib(sync-lib及 ttt-lib),lib里面又有用到第三方一些library,像Timber之 类的,但app里面写Unit test用到Timber,有客制写 了一个task叫unitMocktest来执行unit test,但在执 行gradle unitMocktest的时候会找不到timber,错误讯息如下: app:compileUnitMockTestJava /home/project/app/src/unitMockTest/java/com/aaa/sync/ClassTestC.java:41: error: OkHttpClient okHttpClient = new OkHttpClient(); ^ symbol: class OkHttpClient location: class ClassTestC /home/project/app/src/unitMockTest/java/com/aaa/sync/ClassTestC.java:41: error: OkHttpClient okHttpClient = new OkHttpClient(); ^ symbol: class OkHttpClient location: class ClassTestC /home/project/app/src/unitMockTest/java/com/aaa/sync/ClassTestC.java:49: error Timber.e("a"); ^ symbol: variable Timber location: class ClassTestC Note: /project/app/src/unitMockTest/java/com/aaa/sync/ClassTestA.java uses Note: Recompile with -Xlint:deprecation for details. 3 errors :app:compileUnitMockTestJava FAILED =============================== 以下是app/build.gradle的设定 // Constants def extra = rootProject.ext def deps = extra.deps buildscript { repositories { jcenter() flatDir { dirs 'libs' } } dependencies { classpath 'com.android.tools.build:gradle:2.3.1' classpath 'com.neenbedankt.gradle.plugins:android-apt:1.8' classpath "io.realm:realm-gradle-plugin:3.4.0" classpath 'me.tatarka:gradle-retrolambda:3.5.0' classpath 'me.tatarka.retrolambda.projectlombok:lombok.ast:0.2.3.a2' classpath 'com.jakewharton.timber:timber:4.5.1' } // Exclude the version that the android plugin depends on. configurations.classpath.exclude group: 'com.android.tools.external.lombok' } apply plugin: 'com.android.application' apply plugin: 'com.neenbedankt.android-apt' apply plugin: 'realm-android' android { compileSdkVersion extra.compileSdkVersion buildToolsVersion extra.buildToolsVersion defaultConfig { applicationId "com.abc.sync.test" versionCode 1 versionName "1.0" minSdkVersion extra.minSdkVersion targetSdkVersion extra.targetSdkVersion multiDexEnabled true testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" } configurations.all { resolutionStrategy { force 'com.android.support:support-annotations:23.1.1' } } configurations { compile.exclude group: "org.apache.httpcomponents", module: "httpclient" } sourceSets { String sharedTestDir = 'src/test/java' test { java.srcDir sharedTestDir } androidTest { java.srcDir sharedTestDir } } lintOptions { abortOnError false } buildToolsVersion '25.0.0' } sourceSets { main { java { srcDir 'src/test/java' } } test { java { srcDir 'src/test/java' } compileClasspath += sourceSets.main.runtimeClasspath } unitMockTest { java.srcDir file('src/unitMockTest/java') java.srcDir file('../ttt-lib/src/main/java') java.srcDir file('../sync-lib/src/main/java') } } configurations { unitMockTestCompile.extendsFrom testCompile unitMockTestRuntime.extendsFrom testRuntime } task unitMockTest(type: Test) { println 'Start unit test' testClassesDir = sourceSets.unitMockTest.output.classesDir classpath = sourceSets.unitMockTest.runtimeClasspath useJUnit { includeCategories 'com.wdc.sync.UnitTests' excludeCategories 'com.wdc.sync.IntegrationTests' } } dependencies { compile project(path:':sync-lib' ,configuration: "compile") compile project(path:':ttt-lib',configuration: "compile") testCompile project(path: ':sync-lib' ,configuration: "compile") testCompile project(path: ':ttt-lib',configuration: "compile") testRuntime project(path: ':ttt-lib',configuration: "compile") testCompile deps.timber testCompile deps.okhttp // Logging // compile deps.timber testCompile deps.slf4jApi testCompile deps.slf4jSimple // Dagger compile deps.dagger apt deps.daggerCompiler testApt deps.daggerCompiler provided deps.jsr250Api androidTestApt deps.daggerCompiler androidTestCompile(deps.espressoCore, { exclude group: 'com.android.support', module: 'support-annotations' exclude group: 'com.google.code.findbugs' }) compile deps.androidPriorityJobqueue compile deps.playServicesGcm compile deps.supportAnnotations // main APK // RxJava 2 testCompile deps.rxjava2 testCompile deps.rxjava1 // Java tests testCompile deps.junit testCompile deps.mockitoCore // Android tests androidTestCompile deps.mockitoCore androidTestCompile deps.dexmakerMockito androidTestCompile deps.supportAnnotations // test APK androidTestCompile deps.supportTestRunner androidTestCompile deps.supportTestRules unitMockTestRuntime project(path: ':ttt-lib') unitMockTestCompile project(':sync-lib') unitMockTestCompile project(':ttt-lib') unitMockTestCompile deps.rxjava2 unitMockTestCompile deps.rxjava1 unitMockTestCompile deps.mockitoCore unitMockTestCompile deps.dexmakerMockito } 有人知道为何build会找不到第三方package吗?感谢指教 ----- Sent from JPTT on my Samsung SM-N9208. --



※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 199.255.47.6
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/AndroidDev/M.1502368407.A.96D.html ※ 编辑: finalshinji (199.255.47.6), 08/10/2017 20:36:11







like.gif 您可能会有兴趣的文章
icon.png[问题/行为] 猫晚上进房间会不会有憋尿问题
icon.pngRe: [闲聊] 选了错误的女孩成为魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一张
icon.png[心得] EMS高领长版毛衣.墨小楼MC1002
icon.png[分享] 丹龙隔热纸GE55+33+22
icon.png[问题] 清洗洗衣机
icon.png[寻物] 窗台下的空间
icon.png[闲聊] 双极の女神1 木魔爵
icon.png[售车] 新竹 1997 march 1297cc 白色 四门
icon.png[讨论] 能从照片感受到摄影者心情吗
icon.png[狂贺] 贺贺贺贺 贺!岛村卯月!总选举NO.1
icon.png[难过] 羡慕白皮肤的女生
icon.png阅读文章
icon.png[黑特]
icon.png[问题] SBK S1安装於安全帽位置
icon.png[分享] 旧woo100绝版开箱!!
icon.pngRe: [无言] 关於小包卫生纸
icon.png[开箱] E5-2683V3 RX480Strix 快睿C1 简单测试
icon.png[心得] 苍の海贼龙 地狱 执行者16PT
icon.png[售车] 1999年Virage iO 1.8EXi
icon.png[心得] 挑战33 LV10 狮子座pt solo
icon.png[闲聊] 手把手教你不被桶之新手主购教学
icon.png[分享] Civic Type R 量产版官方照无预警流出
icon.png[售车] Golf 4 2.0 银色 自排
icon.png[出售] Graco提篮汽座(有底座)2000元诚可议
icon.png[问题] 请问补牙材质掉了还能再补吗?(台中半年内
icon.png[问题] 44th 单曲 生写竟然都给重复的啊啊!
icon.png[心得] 华南红卡/icash 核卡
icon.png[问题] 拔牙矫正这样正常吗
icon.png[赠送] 老莫高业 初业 102年版
icon.png[情报] 三大行动支付 本季掀战火
icon.png[宝宝] 博客来Amos水蜡笔5/1特价五折
icon.pngRe: [心得] 新鲜人一些面试分享
icon.png[心得] 苍の海贼龙 地狱 麒麟25PT
icon.pngRe: [闲聊] (君の名は。雷慎入) 君名二创漫画翻译
icon.pngRe: [闲聊] OGN中场影片:失踪人口局 (英文字幕)
icon.png[问题] 台湾大哥大4G讯号差
icon.png[出售] [全国]全新千寻侘草LED灯, 水草

请输入看板名称,例如:BabyMother站内搜寻

TOP