Promise.all
或者
const fetchRes=[];
for(let i=0;i<20;++i){
fetchRes.push(fetch(...));
}
for(let i=0;i<20;++i){
await fetRes[i];
}
把主項(xiàng)目中的 build.gradle 內(nèi)容一行一行條這個(gè)位置做測(cè)試,改了下倉庫,最后終于可以了。。。
group 'com.xxx.yyy'
version '0.1.0'
buildscript {
ext {
springBootVersion = '1.5.10.RELEASE'
}
repositories {
maven { url 'http://maven.aliyun.com/nexus/content/groups/public/' }
}
dependencies {
classpath("org.springframework.boot:spring-boot-gradle-plugin:${springBootVersion}")
classpath('se.transmode.gradle:gradle-docker:1.2')
}
}
subprojects {
apply plugin: 'idea'
apply plugin: 'java'
apply plugin: 'docker'
apply plugin: 'org.springframework.boot'
sourceCompatibility = 1.8
targetCompatibility = 1.8
repositories {
maven { url 'http://maven.aliyun.com/nexus/content/groups/public/' }
}
configurations {
all*.exclude module: 'spring-boot-starter-logging'
all*.exclude module: 'logback-classic'
}
dependencyManagement {
imports {
mavenBom 'org.springframework.cloud:spring-cloud-dependencies:Edgware.SR3'
}
}
dependencies {
compile('org.springframework.boot:spring-boot-starter')
compile('org.springframework.boot:spring-boot-starter-log4j2')
compile('org.springframework.boot:spring-boot-starter-test')
compile('com.fasterxml.jackson.dataformat:jackson-dataformat-yaml')
}
}
順便在某些 module 下加上了
bootRepackage {
enabled = false
}
因?yàn)樗陌皇悄銓懙哪莻€(gè)
dependencies
配置本身就有exclude
和transitive
配置啊,還不夠你用嗎? https://docs.gradle.org/curre...
不明白具體你的需求,能否貼出build.gradle
DSL配置幫助分析呢?
EDIT: 如果你期望通過開關(guān)判斷,那么其實(shí)直接借用groovy DSL就可以了:
dependendies {
if ("${myProp}" == 'true') {
compile ':subproj'
}
}
這個(gè)myProp
可以配置在gradle.properties
文件,也可以在命令行執(zhí)行的時(shí)候通過命令行system properties傳遞進(jìn)去:
./gradlew -DmyProp=true build
如果你的開關(guān)條件是通過其他渠道get到,那么需要在groovy DSL中編寫對(duì)應(yīng)的get方式
你也許應(yīng)該在test文件夾下建立測(cè)試用例
你也看到了你的依賴的配置
<scope>test</scope>
這個(gè)配置表示只會(huì)在測(cè)試中應(yīng)用這個(gè)依賴,你而測(cè)試代碼默認(rèn)是在test包下
- src
- main
- scala //scala源碼
- resources // 資源文件
- test
- scala //scala測(cè)試用例
- resources // 測(cè)試用例資源文件
gradlew
Gradle Wrapper
你使用這個(gè)命令時(shí) gradle wrapper 會(huì)去 ${user.home}/.gradle/wrapper/dists
目錄尋找 gradle
依賴運(yùn)行,如果沒有那就會(huì)去下載對(duì)應(yīng)的包。
如果你期望使用你本地安裝的 gradle
那你可以使用 gradle build
運(yùn)行,而不是 ./gradlew build
運(yùn)行。
可以的.參考 StackoverFlow 上的這個(gè)問題:
How to save and load MLLib model in Apache Spark
gradle就是一個(gè)傻吊,坑死了,前段時(shí)間不會(huì)弄,老是報(bào)錯(cuò)。果斷轉(zhuǎn)成maven項(xiàng)目,舒服多了
可以刪除項(xiàng)目下面的build目錄clean試試
在 組件調(diào)用處添加一個(gè)標(biāo)識(shí):
<NoticeLineInput title='會(huì)議名稱:'
Ustyle={defaultStyle}
placeholder='輸入會(huì)議名稱'
onKeyUp={e => this.keyUpHandle(e, 'name') }
key='name'/>
<NoticeLineInput title='會(huì)議時(shí)間:'
Ustyle={defaultStyle}
placeholder='時(shí)間格式:yyyy-MM-dd HH:mm:ss'
onKeyUp={ e => this.keyUpHandle(e, 'time') }
key='time'/>
然后在事件處理函數(shù)里判斷來源:
keyUpHandle(e, target) {
console.log('來源', target);
}
很簡(jiǎn)單,直接為這個(gè)UDF加參數(shù)不就行了
你依賴的第三庫,是一個(gè)jdk8編譯的字節(jié)碼。
問題解決了,最根本的原因還是build.gradle構(gòu)建部分的配置放在了根目錄下,沒放在啟動(dòng)類所在的模塊下,打包bootJar時(shí)提示找不到啟動(dòng)類。
另外就算強(qiáng)行把啟動(dòng)類的包名.類名寫在start-class上,因?yàn)閷?shí)際上并沒有找到這個(gè)啟動(dòng)類,所以打出來的包是殘缺的。
只要在啟動(dòng)類所在的模塊增加一個(gè)build.gradle,并把構(gòu)建部分的配置移過去,就可以正常打包了。
問題解決有賴于:https://my.oschina.net/tangdu...
requires a placeholder substitution but no value for <GETUI_APP_ID> is provided
朋友,你這個(gè)報(bào)錯(cuò)是個(gè)推的,不是JPush的
我找到了跑回來回答你
object
可以擴(kuò)展類或特質(zhì),其結(jié)果是一個(gè)擴(kuò)展了指定類或特質(zhì)的對(duì)象,同時(shí)擁有在對(duì)象定義中給出的所有特性。object
和 class
的區(qū)別是:你可以理解為 object
是單例模式,它只能有一個(gè);而 class
可以創(chuàng)建多個(gè)。abstract Fruit
是什么東西……而且大括號(hào)括起來的是代碼塊,Fruit
里面兩個(gè)值都是 val
,你必須改成小括號(hào)使用主構(gòu)造器方法。如下可通過編譯:abstract class Fruit(val name: String, val color: String)
object Fruit{
object Apple extends Fruit("apple","red")
val menu=List(Apple)
}
這里 extens Fruit("A","B")
帶了兩個(gè)參數(shù),就是在繼承時(shí)構(gòu)造,畢竟里面兩個(gè)值你都用了 val
。object Fruit
就是 abstract class Fruit
的伴生對(duì)象了。
我不知道你的上下文其他代碼是怎么樣的,但如果你僅僅只是想明白花括號(hào)是干嘛用的下面有一個(gè)例子:
val a = 1
val b = 2
val func = abstractAdd(a,b){
addImpl
}
def abstractAdd(a: Int, b: Int)(tryDo: (Int, Int) => Int): Int = {
tryDo(a, b)
}
def addImpl(a: Int, b: Int): Int = a + b
我們有個(gè)不知道這么做加法的運(yùn)算 abstractAdd
,除了要傳入要進(jìn)行加法的 a
和 b
,還需要傳入一個(gè)真正實(shí)現(xiàn)加法的函數(shù)。func
就實(shí)現(xiàn)完整實(shí)現(xiàn)了加法運(yùn)算了。
涉及知識(shí)點(diǎn):柯里化、高階函數(shù)
有多少個(gè)加多少個(gè)就行了,放在google()前面
maven{ url 'http://maven.aliyun.com/nexus/content/groups/public/' }
maven{ url 'https://maven.aliyun.com/repository/google' }
.str.extract('^(.+?\.)')
正則里面括號(hào)表示捕獲分組,而你的分組內(nèi)并沒有捕獲.
我在做Kafka和sparkstreaming中也遇到過序列化問題。
你用我這種寫法看看有沒有問題。使用RunTimeSchema 獲取schema
def executeByScan(rdd: RDD[(Array[Byte], Array[Byte])], path: String): Unit = {
val resultRdd = rdd.map(row => {
val result: KafkaMessage = new KafkaMessage
ProtostuffIOUtil.mergeFrom(row._2, result, RuntimeSchema.getSchema(classOf[KafkaMessage]))
。。。。。。。
}
北大青鳥APTECH成立于1999年。依托北京大學(xué)優(yōu)質(zhì)雄厚的教育資源和背景,秉承“教育改變生活”的發(fā)展理念,致力于培養(yǎng)中國(guó)IT技能型緊缺人才,是大數(shù)據(jù)專業(yè)的國(guó)家
北大青鳥中博軟件學(xué)院創(chuàng)立于2003年,作為華東區(qū)著名互聯(lián)網(wǎng)學(xué)院和江蘇省首批服務(wù)外包人才培訓(xùn)基地,中博成功培育了近30000名軟件工程師走向高薪崗位,合作企業(yè)超4
中公教育集團(tuán)創(chuàng)建于1999年,經(jīng)過二十年潛心發(fā)展,已由一家北大畢業(yè)生自主創(chuàng)業(yè)的信息技術(shù)與教育服務(wù)機(jī)構(gòu),發(fā)展為教育服務(wù)業(yè)的綜合性企業(yè)集團(tuán),成為集合面授教學(xué)培訓(xùn)、網(wǎng)
達(dá)內(nèi)教育集團(tuán)成立于2002年,是一家由留學(xué)海歸創(chuàng)辦的高端職業(yè)教育培訓(xùn)機(jī)構(gòu),是中國(guó)一站式人才培養(yǎng)平臺(tái)、一站式人才輸送平臺(tái)。2014年4月3日在美國(guó)成功上市,融資1
曾工作于聯(lián)想擔(dān)任系統(tǒng)開發(fā)工程師,曾在博彥科技股份有限公司擔(dān)任項(xiàng)目經(jīng)理從事移動(dòng)互聯(lián)網(wǎng)管理及研發(fā)工作,曾創(chuàng)辦藍(lán)懿科技有限責(zé)任公司從事總經(jīng)理職務(wù)負(fù)責(zé)iOS教學(xué)及管理工作。
浪潮集團(tuán)項(xiàng)目經(jīng)理。精通Java與.NET 技術(shù), 熟練的跨平臺(tái)面向?qū)ο箝_發(fā)經(jīng)驗(yàn),技術(shù)功底深厚。 授課風(fēng)格 授課風(fēng)格清新自然、條理清晰、主次分明、重點(diǎn)難點(diǎn)突出、引人入勝。
精通HTML5和CSS3;Javascript及主流js庫,具有快速界面開發(fā)的能力,對(duì)瀏覽器兼容性、前端性能優(yōu)化等有深入理解。精通網(wǎng)頁制作和網(wǎng)頁游戲開發(fā)。
具有10 年的Java 企業(yè)應(yīng)用開發(fā)經(jīng)驗(yàn)。曾經(jīng)歷任德國(guó)Software AG 技術(shù)顧問,美國(guó)Dachieve 系統(tǒng)架構(gòu)師,美國(guó)AngelEngineers Inc. 系統(tǒng)架構(gòu)師。