av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

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

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

瀏覽:121日期: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
主站蜘蛛池模板: 亚洲性人人天天夜夜摸 | 精品视频在线播放 | av一区二区三区 | 欧美日韩在线不卡 | 草草视频在线观看 | 人人鲁人人莫人人爱精品 | 欧美日韩国产一区二区三区不卡 | 天天摸天天干 | 成人精品一区二区三区中文字幕 | 亚洲精品久久久久中文字幕二区 | 欧美激情综合 | 国产欧美精品区一区二区三区 | 久久精品| 成av在线| 精品日韩 | 国产小网站 | 亚洲欧美日韩在线不卡 | 成人亚洲精品 | 国产精品视频久久 | 国产三区视频在线观看 | 欧美国产视频 | 欧美一级淫片免费视频黄 | 亚洲激情网站 | 中文天堂在线一区 | 亚洲天堂av在线 | 青青久草 | 久久久久久黄 | 久久电影一区 | 亚洲欧洲一区二区 | 成人精品一区二区三区中文字幕 | 国产精品国产成人国产三级 | 国产一区久久久 | 久久国产精品视频 | 特黄色一级毛片 | 精品免费在线 | 久久久av | 国产国产精品久久久久 | 成人一区二区在线 | 自拍偷拍精品 | 三级高清 | 91国产在线视频在线 |