2016-07-06 14 views
17

uyarı yaklaşıkRetrolambda - Jack java 8 desteklemek için gereklidir - düzeltme

Jak Java'nın 8 dil özelliklerini desteklemek için gereklidir uyarı devre dışı bırakmak için bir yolu var mı.

Retrolambda kullanırken?

Henüz bizim projemizi henüz derlemediğinden beri jack desteği istemiyorum.

compileOptions { 
    sourceCompatibility JavaVersion.VERSION_1_8 
    targetCompatibility JavaVersion.VERSION_1_8 
} 

The:

+0

, bu sadece bir bilgidir. Peki neden onu kapatalım? – Lovis

+0

Sadece işler temizlendiğinde sevmiyor musun? Aslında jenkins'de korkunç görünüyor, çünkü 30 satır gibi. Biliyorum o kadar da büyük bir anlaşma değil, ama hızlı bir şekilde düzeltmek neden rahatsız etmemek? – miszmaniac

+0

30 satır? Bu ilginç, onlardan sadece "sadece" var. neyse. hayır, gerçekten bu şeyleri umursamıyorum. (Bu farklı olurdu gerçek bir uyarı olsaydı) – Lovis

cevap

15

android stüdyo

Sadece kendi build.gradle dosyasından aşağıdaki yapılandırmayı kaldırabilir

// ----- add 
buildscript { 
    repositories { 
     mavenCentral() 
    } 

    dependencies { 
     classpath 'me.tatarka:gradle-retrolambda:3.2.4' 
    } 
} 

repositories { 
    mavenCentral() 
} 
// ----- end 

apply plugin: 'com.android.application' 
apply plugin: 'me.tatarka.retrolambda' // ----- add 

android { 
    compileSdkVersion 23 
    buildToolsVersion "23.0.2" 

//----add 
    compileOptions { 
     sourceCompatibility JavaVersion.VERSION_1_8 
     targetCompatibility JavaVersion.VERSION_1_8 
    } 
+5

Bu sorulara cevap vermez –

5

bunu synck sonra uygulama gradle içinde kodları aşağıda ekle retrolambda eklentisi yine de bununla ilgilenecek ve Java derleyici görevini ayarlayacaktır Doğru kaynak ve hedef uyumluluk ayarları ile.

+2

nope, mesajlardan kurtulmayacak (ve retrolambda kullanırsanız bu satırları eklemek afaik gerekir) – Lovis

+0

Peki, gerçekten denediniz mi? Retrolambda eklentisinin kaynak koduna baktığımda bana tam olarak tarif ettiğim gibi geldiğini ve uyumluluk ayarlarının VERSION_1_8 olarak ayarlanmadığı durumlarda Jack uyarısının ortadan kalktığını test ettim. –

+0

OP değilim, ama ben biliyorum bu satırları 'build.gradle' içinde biliyorum ve hala bilgi almak - belki retrolambda bir güncelleme gerekiyor, o zaman. – Lovis

-1
apply plugin: 'com.android.application' 

android { 
    compileSdkVersion 25 
    buildToolsVersion "25.0.3" 
    defaultConfig { 
     applicationId "io.github.rxandroid" 
     minSdkVersion 15 
     targetSdkVersion 25 
     versionCode 1 
     versionName "1.0" 
     testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" 
     jackOptions { 
      enabled true 

     } 

    } 
    buildTypes { 
     release { 
      minifyEnabled false 
      proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' 
     } 
    } 
    compileOptions { 
     sourceCompatibility JavaVersion.VERSION_1_8 
     targetCompatibility JavaVersion.VERSION_1_8 
    } 

} 

dependencies { 
    compile fileTree(dir: 'libs', include: ['*.jar']) 
    androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', { 
     exclude group: 'com.android.support', module: 'support-annotations' 
    }) 
    compile 'com.android.support:appcompat-v7:25.3.1' 
    compile 'com.android.support.constraint:constraint-layout:1.0.2' 
    testCompile 'junit:junit:4.12' 

    compile 'io.reactivex.rxjava2:rxandroid:2.0.1' 
    compile 'io.reactivex:rxjava:1.3.0' 
    compile 'com.jakewharton:butterknife:8.6.0' 
    compile 'com.squareup.retrofit2:retrofit:2.3.0' 
    compile 'com.squareup.retrofit2:converter-gson:2.2.0' 
    compile 'com.squareup.retrofit2:adapter-rxjava:2.2.0' 

} 
+0

Bu 'jackOptions { etkin} } Jack projesi kapatıldı, Android Studio 3.0'ın sabit bir kanala dönüştüğü zaman, retrolambda'yı projeden kaldırabilirsiniz, çünkü bu zaten mükemmel çalışıyor! – miszmaniac