2016-10-18 3 views
2

Ich versuche, die JGraphT Bibliothek zu benutzen, aber es braucht lambdas aufrufen ...Die Methode kann nicht Version() auf Null-Objekt

Hier ist mein Code:

// Top-level build file where you can add configuration options common to all sub-projects/modules. 

buildscript { 
    repositories { 
     maven { 
      url "https://plugins.gradle.org/m2/" 
     } 
     jcenter() 
    } 
    dependencies { 
     classpath "gradle.plugin.me.tatarka:gradle-retrolambda:3.3.0" 
     classpath 'com.android.tools.build:gradle:2.2.1' 
    } 
} 
allprojects { 
    repositories { 
     jcenter() 
     mavenCentral() 
    } 
} 

task clean(type: Delete) { 
    delete rootProject.buildDir 
} 

Und: app

apply plugin: "me.tatarka.retrolambda" version "3.3.0" 
apply plugin: 'com.android.application' 

android { 
    compileSdkVersion 23 
    buildToolsVersion "24.0.3" 
    compileOptions { 
     sourceCompatibility JavaVersion.VERSION_1_8 
     targetCompatibility JavaVersion.VERSION_1_8 
    } 

    defaultConfig { 
     applicationId "it.univpm.gruppoids.iotforemergencyandnavigation" 
     minSdkVersion 16 
     targetSdkVersion 23 
     versionCode 1 
     versionName "1.0" 

     jackOptions { 
      enabled true 
     } 
    } 



    buildTypes { 
     release { 
      minifyEnabled false 
      proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' 
     } 
    } 
} 
dependencies { 
    compile fileTree(include: ['*.jar'], dir: 'libs') 
    testCompile 'junit:junit:4.12' 
    compile 'com.android.support:appcompat-v7:23.4.0' 
    compile 'com.android.support:design:23.4.0' 
    compile 'com.android.support:support-v4:23.4.0' 
    compile 'com.journeyapps:zxing-android-embedded:[email protected]' 
    compile 'com.google.zxing:core:3.2.1' 
    compile 'org.jgrapht:jgrapht-core:1.0.0' 
} 

Der Fehler ist: Fehler: (1, 0) Kann Methode Version() auf Nullobjekt nicht öffnen Datei öffnen Wo und was ist der Fehler? Danke

Antwort

3

Sie mischen zwei Arten von Syntaxen. Verwenden Sie entweder

buildscript { 
    repositories { 
     mavenCentral() 
    } 
    dependencies { 
     classpath "gradle.plugin.me.tatarka:gradle-retrolambda:3.3.0" 
    } 
} 

apply plugin: 'me.tatarka.retrolambda' 

oder

plugins { 
    id "me.tatarka.retrolambda" version "3.3.0" 
} 

(gradle-retrolambda README), siehe auch the gradle documentation.

+0

Und in der zweiten Form, keine Notwendigkeit für 'Classpath' korrekt? – weston

+0

_ "Anstatt einen Skriptblock 'buildscript' und eine Anweisung 'apply' zu kombinieren, können beide Anweisungen durch einen' plugins'-Skriptblock ersetzt werden. _ Das interpretiere ich als "Ja" zu Ihrer Frage. Aber ich habe diese Syntax nicht selbst benutzt, also kann ich nicht sicher sagen. – Michael

Verwandte Themen