色综合图-色综合图片-色综合图片二区150p-色综合图区-玖玖国产精品视频-玖玖香蕉视频

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

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

瀏覽:95日期: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
主站蜘蛛池模板: 亚洲人成网站观看在线播放 | 一级女性全黄久久生活片免费 | 亚洲欧洲一区二区 | 毛片a区| 国产乱子精品免费视观看片 | 一区二区三区在线免费看 | 欧美日韩高清观看一区二区 | 91亚洲精品久久91综合 | 高跟丝袜美女一级毛片 | 欧美一级香蕉毛片 | 在线播放国产一区二区三区 | 国产自在线观看 | 久久视频精品53在线观看 | 欧美成人做爰网站 | 国产成人资源 | 国产午夜免费视频 | 久草精品免费 | 一区在线观看 | 亚洲成人免费 | 国产精品一区伦免视频播放 | 一区二区三区在线免费视频 | 国产成人国产在线观看入口 | 亚洲爱爱天堂 | 中文字幕国产视频 | 亚洲黄色免费网址 | 午夜在线伦理福利视频 | 欧美亚洲视频在线观看 | tom影院亚洲国产 | 狠狠一区| 一区二区三区欧美在线 | 久久免费香蕉视频 | 日本成本人视频 | 亚洲第一免费播放区 | 萌白酱粉嫩jk福利视频在线观看 | 亚洲观看视频 | 午夜影院欧美 | 中文字幕亚洲欧美 | 国产精品线在线精品国语 | 国产国模福利视频 | 欧美三级免费网站 | 精品综合久久久久久蜜月 |