Build.gradle返回null属性文件

时间:2014-10-17 17:44:03

标签: android import compilation gradle build.gradle

我仍然坚持这个问题。我已经尝试过文件,并把它放在多个地方,每次都重建一个项目。同样的问题。 在Gradle Sync消息中,我在build.gradle中遇到错误:

Error:(33) A problem occurred evaluating project ':RomainGuyMuzei'.

assert localProps['keystore.props.file']
| |
| null
[sdk.dir:C:\Program Files (x86)\Android\android-studio\sdk]

有没有人可以快速解决此问题?

我在哪里放置我创建的keystore.properties文件? 我的gradle文件有问题吗?它不会读它?

def Properties localProps = new Properties()
        localProps.load(new FileInputStream(file('../local.properties')))
        def Properties keyProps = new Properties()
        assert localProps['keystore.props.file'];   //ERROR OCCURS ON THIS LINE
        keyProps.load(new FileInputStream(file(localProps['keystore.props.file'])))
        storeFile file(keyProps["store"])
        keyAlias keyProps["alias"]
        storePassword keyProps["storePass"]
        keyPassword keyProps["pass"]

我在上面指出的问题上遇到了问题。我正确加载文件了吗?显然不是。再暗示你愿意分享? :

谢谢大家。我在这个问题中包含了一堆问题/我的想法。

1 个答案:

答案 0 :(得分:0)

试试这段代码:

// Create a properties object
def localProps = new Properties()

def file = "${rootDir}/local.properties"
println("Reading properties from #{file.getAbsolutePath()}. Exists? #{file.exists()}")

// Load them from a file
file.withInputStream { localProps.load(it) }

这为您提供了三个优势:

  1. 您可以查看local.properties文件的完整路径,并检查该文件是否存在。
  2. 您可以设置相对于根项目目录的路径(使用rootDir/<something>)。
  3. 所有输入流都会尽快关闭(通过.withInputStream关闭)。