2013-09-23 9 views
12

NOTA: non riesco a pubblicare link, quindi suppongo che dovrai andare al numero here per seguire i riferimenti. scusa, non la mia regola."Né il percorso né la baseDir potrebbero essere una stringa vuota o nulla." errore durante l'importazione del progetto gradle in Android Studio 0.2.9

sto ottenendo il seguente errore quando si tenta di importare un progetto in Android 0.2.9 Studio:

Could not execute build using Gradle distribution 
'http://services.gradle.org/distributions-snapshots/ 
gradle-1.8-20130830160653+0000-bin.zip'. 
A problem occurred configuring project ':library'. 
A problem occurred configuring project ':library'. 
Failed to notify project evaluation listener. 
Neither path nor baseDir may be null or empty 
string. path='' basedir='<projects folder>/ 
drag-sort-listview/library' 

Consult IDE log for more details (Help | Show Log) 

il progetto era in origine un progetto Maven (1). l'ho aperto in Eclipse ADT, ho generato un file /librabry/build.gradle secondo le istruzioni in (2).

Eclipse ADT generato build.gradle sembrava:

buildscript { 
    repositories { 
     mavenCentral() 
    } 
    dependencies { 
     classpath 'com.android.tools.build:gradle:0.4' 
    } 
} 
apply plugin: 'android-library' 

dependencies { 
    compile fileTree(dir: 'libs', include: '*.jar') 
} 

android { 
    compileSdkVersion 7 
    buildToolsVersion "17.0.0" 

    sourceSets { 
     main { 
      manifest.srcFile 'AndroidManifest.xml' 
      java.srcDirs = [''] 
      resources.srcDirs = [''] 
      aidl.srcDirs = [''] 
      renderscript.srcDirs = [''] 
      res.srcDirs = ['res'] 
      assets.srcDirs = ['assets'] 
     } 

     instrumentTest.setRoot('tests') 
    } 
} 

ho dovuto cambiare la linea 6 da

classpath 'com.android.tools.build:gradle:0.4' 

a

classpath 'com.android.tools.build:gradle:0.5+' 

per arrivare Android Studio per smettere di dire le versioni erano miss-abbinati. Ho anche aggiunto un file contenente /settings.gradle

include ':library' 

e un file /local.properties con il contenuto

# This file is automatically generated by Android Studio. 
# Do not modify this file -- YOUR CHANGES WILL BE ERASED! 
# 
# This file must *NOT* be checked into Version Control Systems, 
# as it contains information specific to your local configuration. 

# Location of the SDK. This is only used by Gradle. 
# For customization when using a Version Control System, please read the 
# header note. 
sdk.dir=/Applications/Android Studio.app/sdk 

Allora ho tentato di importare il file /settings.gradle selezionandolo nel 'File | Importa progetto ... 'finestra di dialogo. Ho selezionato l'opzione "Usa importazione automatica" e "Usa gradle con verifica" selezionata nella finestra di dialogo (3). la voce completa idea.log può essere visualizzata in (4).

qualsiasi aiuto sarebbe molto apprezzato, grazie.

risposta

2

(.. Risponde l'OP in una modifica domanda Convertito in una risposta della comunità wiki Vedere Question with no answers, but issue solved in the comments (or extended in chat))

Il PO ha scritto:

ok, risolto. il problema è con gli elenchi vuoti sotto android.sourceSets in build.gradle, li ho commentati per risolvere l'errore. Ecco il mio attuale build.gradle:

buildscript { 
    repositories { 
     mavenCentral() 
    } 
    dependencies { 
     classpath 'com.android.tools.build:gradle:0.4' 
    } 
} 
apply plugin: 'android-library' 

dependencies { 
    compile fileTree(dir: 'libs', include: '*.jar') 
} 

android { 
    compileSdkVersion 7 
    buildToolsVersion "17.0.0" 

    sourceSets { 
     main { 
      manifest.srcFile 'AndroidManifest.xml' 
      // java.srcDirs = [''] 
      // resources.srcDirs = [''] 
      // aidl.srcDirs = [''] 
      // renderscript.srcDirs = [''] 
      res.srcDirs = ['res'] 
      assets.srcDirs = ['assets'] 
     } 

     instrumentTest.setRoot('tests') 
    } 
} 

speranza che tutti voi aiuta.

12

Questo accadrà se si utilizza Environment Variables in questo modo:

android { 
signingConfigs { 
    release { 
     storeFile file(RELEASE_STORE_FILE) 
     storePassword RELEASE_STORE_PASSWORD 
     keyAlias RELEASE_KEY_ALIAS 
     keyPassword RELEASE_KEY_PASSWORD 
    } 
} 

E non hai definito tali variabili nel file gradle.properties situato alla base del progetto.

Per risolvere questo problema, assicurarsi che le variabili siano definite, ecco un esempio del mio gradle.properties file:

RELEASE_STORE_FILE=app_keystore.jks 
RELEASE_STORE_PASSWORD=password 
RELEASE_KEY_ALIAS=MyAppKey 
RELEASE_KEY_PASSWORD=password 
3

L'errore potrebbe riferirsi al percorso del keystore. Se il percorso del keystore non funziona, penserà che sia null. Se si desidera solo utilizzare il nome del file del keystore (anziché il percorso completo), assicurarsi che il keystore si trovi nella directory principale del progetto.

android { 
signingConfigs { 
    release { 
     storeFile file(**DoubleCheckPath**) 
     storePassword RELEASE_STORE_PASSWORD 
     keyAlias RELEASE_KEY_ALIAS 
     keyPassword RELEASE_KEY_PASSWORD 
    } 
} 
0

si può perdere un file in progetto per il file "gradle.properties", in quanto questo file è includono alcune varia, per esempio, la nostra var personalizzata, ad key.keypassword key.storefile, si dovrebbe verificare questo il file esiste o no.

Problemi correlati