1. 程式人生 > >No resource found that matches the given name (at 'src' with value '@drawable/right_arrow_icon').

No resource found that matches the given name (at 'src' with value '@drawable/right_arrow_icon').

問題:我的專案有多個版本,不同版本對應不同res資料夾:


編譯時也分了多個版本,這次當我打包eshchl版本時報錯:No resource found that matches the given name (at 'src' with value '@drawable/** 部分圖片都找不到:


思路:剛開始我把res下xhdpi中對應圖片複製了一份到hdpi下 有100多個圖片,檔案比較多 複製也比較慢,然後就想到其他版本怎麼沒這個問題 於是看了其他版本的res下的各個dpi下的檔案 發現和eshchl中相同,這就證明不是資原始檔的問題,由於是剛接手的專案,雖然配置檔案都是配置好的,但是是我第一次打包這個版本,想著會不會是配置檔案裡這個版本的res目錄配置錯誤,於是檢視資原始檔:

sourceSets {
    main {
        jni.srcDirs = ['src/main/cpp']
        jniLibs.srcDirs = ['src/main/jniLibs']
    }
    flavorstest_yundi {
        res.srcDirs = ['src/main/res-yundi']
    }
    flavorstest_cj {
        res.srcDirs = ['src/main/res-cj']
    }
    flavorsjkbtest_yundi {
        res.srcDirs 
= ['src/main/res-yundi'] } flavorsjkbtest_yundi_tencent { res.srcDirs = ['src/main/res-yundi'] } flavorsjkbtest_midiab { res.srcDirs = ['src/main/res-midiab'] } flavorsjkbtest_eshchl { res.srcDirs = ['src/main/res-eshchl'] } }
發現就支配了測試版eshchl的res,到此問題找出,補上正式版res配置目錄即可。