build.gradle 中的相对路径在 Windows 和 OS 之间不同 X

Relative path in build.gradle differs between Windows and OS X

我的项目有一个包含密钥库文件的文件夹 (file.keystore)。这是结构:

+---.gradle
|   \---2.2
|       \---taskArtifacts
+---.idea
|   +---copyright
|   \---libraries
+---app
|   +---build
|   |   +---generated
|   +---libs
|   \---src
|       +---androidTest
|       \---main
+---build
|   \---intermediates
|       \---dex-cache
+---gradle
|   \---wrapper
\---keystore

要在 build.gradle 中使用它,我使用这个:

signingConfigs {
    project {
        keyAlias 'project'
        keyPassword 'blabla'
        storeFile file('keystore\file.keystore')
        storePassword 'blabla'
    }

在 windows 中一切都是正确的,因为它在以下位置搜索:

/project/keystore/file.keystore

但在 OS X 中搜索:

/project/app/keystore/file.keystore

我应该如何在 build.gradle 中编码?

尝试

project {
    keyAlias 'project'
    keyPassword 'blabla'
    storeFile file('../keystore/file.keystore')
    storePassword 'blabla'
}

我认为为时已晚。但也许这会帮助遇到同样问题的人。

使用groovy字符串插值$rootDir属性.

project {
   ...     
   storeFile file("$rootDir\keystore\file.keystore")
   ...
}

注意它使用了"double quotation"

Linh Nguyen Vu 是正确的! 低于测试!关键字是已解决: