亚洲精品久久久中文字幕-亚洲精品久久片久久-亚洲精品久久青草-亚洲精品久久婷婷爱久久婷婷-亚洲精品久久午夜香蕉

您的位置:首頁技術文章
文章詳情頁

android-studio - 如何在android module中使用Java 8的新特性,比如Lambda?

瀏覽:110日期:2024-02-26 08:25:40

問題描述

一個很蛋疼的問題。是這樣的:在項目中使用了Java8和Jack編譯器來使用一些Java 8的新特性,比如Lambda,用著的確很爽。配置如下:在app的build.gradle文件中加入如下配置:

jackOptions {enabled true }

compileOptions {sourceCompatibility JavaVersion.VERSION_1_8targetCompatibility JavaVersion.VERSION_1_8 }

相安無事了很久,直到今天,打算將項目中一些可以復用的代碼整理成module,然后在app中引用。問題來了,首先是Jack是不能在modlue中enable的。如果將下面代碼寫在modlue的build.gradle中:

jackOptions {enabled true }

就會報如下錯誤:

Error:Library projects cannot enable Jack. Jack is enabled in default config.

所以刪掉了這句話,然后留下這句話:

compileOptions {sourceCompatibility JavaVersion.VERSION_1_8targetCompatibility JavaVersion.VERSION_1_8 }

然后Android Studio就會提示我module中有些seOnClickListener之類的代碼可以替換成Lambda,滿心歡喜,以為搞定了。然而Make Project卻出現如下錯誤:

Error:Execution failed for task ’:customviews:compileReleaseJavaWithJavac’.> Compilation failed; see the compiler error output for details.

只要我把module中Lambda表達式改成普通寫法,就不會報這個錯。我也不知道哪里出問題了,悲催。

希望大神幫我解決下!

PS:不要說用第三方插件實現Lambda,感覺為了一個Lambda引一個庫,得不償失。

問題解答

回答1:

加上這句gradle.projectsEvaluated {

tasks.withType(JavaCompile) { options.compilerArgs << '-Xbootclasspath/a:' + System.properties.get('java.home') + '/lib/rt.jar'}

}

http://stackoverflow.com/ques...

標簽: java
主站蜘蛛池模板: 九九在线免费观看视频 | 亚洲精品视频免费观看 | 国产97色在线 | 亚洲 | 国产色婷婷精品综合在线 | 成人伊人网 | 人与鲁牲交持级毛片 | 国产v精品成人免费视频71sao | 直接看黄的网站 | 午夜爱爱毛片xxxx视频免费看 | 麻豆91av| 亚州三级| 亚洲天堂视频网 | 欧美黄网站免费观看 | 婷婷综合色伊人阁 | 欧美黑人换爱交换乱理伦片 | 国产视频资源在线观看 | 国产91欧美 | 国内精品福利 | 亚洲第一免费视频 | 黄色免费在线视频 | 成人免费毛片一区二区三区 | 免费高清精品国偷自产在线 | 视频黄在线观看 | 最新永久一路线二路线三路线 | 2021久久精品免费观看 | 日韩小视频网站 | 国产日韩欧美高清 | 伊人一区二区三区 | 亚洲国产色婷婷精品综合在线观看 | 国产精品夜夜春夜夜爽久久 | 一级欧美一级日韩毛片99 | 久久久久国产精品免费免费不卡 | 日日摸夜夜添夜夜添欧美毛片 | 国产精品欧美日韩精品 | 手机看片日韩日韩国产在线看 | 日韩久久精品一区二区三区 | 久久成人在线观看 | 欧美日韩国产一区三区 | 亚洲色图男人天堂 | 亚洲精品大片 | 婷婷久久久五月综合色 |