2017-10-13 523 views
1

我已審查了一些關於這個話題的帖子的方法storeFile(),搖籃錯誤 - 找不到參數/路徑/到/ storefile

爲首發。但我還是不能讓過去的搖籃錯誤Error:(69, 0) Could not find method storeFile() for arguments [/path/to/my.keystore]在線69:

storeFile file(keystoreProperties['storeFile']) 

在模塊gradle這個build文件 - 我的模塊gradle.build文件的內容:

apply plugin: 'com.android.application' 
apply plugin: 'signing' 

android { 

    ... 

    buildTypes { 

     ... 

     release { 
      minifyEnabled true 
      proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' 

      def keystorePropertiesFile = rootProject.file("keystore.properties"); 
      def keystoreProperties = new Properties() 
      keystoreProperties.load(new FileInputStream(keystorePropertiesFile)) 
      storeFile file(keystoreProperties['storeFile']) 
      storePassword keystoreProperties['storePassword'] 
      keyAlias keystoreProperties['keyAlias'] 
      keyPassword keystoreProperties['keyPassword'] 

     } 

     ... 

    } 

    ... 

} 

... 

,我加載keystore.properties文件(位於項目的根目錄),其中包含:

storeFile=/path/to/my.keystore 
storePassword=storepwd 
keyPassword=keypwd 
keyAlias=keyalias 

正如你所看到的,我已經在gradle.build文件storeFile參考文件構造和屬性文件中密鑰庫的路徑。

哪裏是錯誤,或者我錯過了什麼,不理解?

參考

  • 的Android 2.3.3工作室
  • 搖籃4.1版

回答

3

你必須在signing塊在buildTypes塊添加此DSL沒有。

signingConfigs { 
     release { 
      storeFile file(keystoreProperties['storeFile']) 
      storePassword keystoreProperties['storePassword'] 
      keyAlias keystoreProperties['keyAlias'] 
      keyPassword keystoreProperties['keyPassword'] 

     } 
    }