这里有一个类似的问题:Gradle properties not being read from ~/.gradle/gradle.properties但它并没有解决我的问题。
在我看来,Gradle没有读取我的~/.gradle/gradle.properties
文件。
I have a gradle.properties file in ~/.gradle
, and it has properties needed to sign artifacts before uploading to maven central. It looks like this:
signing.keyId=12345678
signing.password=myPassword
signing.secretKeyRingFile=/home/me/.gnupg/secring.gpg
sonatypeUsername=me
sonatypePassword=myOtherPassword
当我尝试构建我的项目时,它会抱怨没有sonatypeUsername属性,因此:
> Could not find property 'sonatypeUsername' on root project 'yourProject'.
以下是我的项目的build.gradle的相关部分:
uploadArchives {
repositories {
mavenDeployer {
// lots of non-interesting things here
repository(url: "https://oss.sonatype.org/service/local/staging/deploy/maven2/") {
authentication(userName: project.property("sonatypeUsername"), password: project.property("sonatypePassword"))
}
}
}
}
当我尝试使用调试功能构建项目时,我看到了以下有关属性的内容:
$ ./gradlew --stacktrace --debug build
[INFO] [o.g.BuildLogger] Starting Build
[DEBUG] [o.g.BuildLogger] Gradle user home: /home/me
[DEBUG] [o.g.BuildLogger] Current dir: /home/me/dev/yourProject
[DEBUG] [o.g.BuildLogger] Settings file: null
[DEBUG] [o.g.BuildLogger] Build file: null
[DEBUG] [o.g.i.b.BuildSourceBuilder] Starting to build the build sources.
[DEBUG] [o.g.i.b.BuildSourceBuilder] Gradle source dir does not exist. We leave.
[DEBUG] [o.g.i.DefaultGradlePropertiesLoader] Found env project properties: []
[DEBUG] [o.g.i.DefaultGradlePropertiesLoader] Found system project properties: []
[DEBUG] [o.g.a.i.a.m.DefaultLocalMavenRepositoryLocator] No local repository in Settings file defined. Using default path: /home/me/.m2/repository
[DEBUG] [o.g.i.ScriptEvaluatingSettingsProcessor] Timing: Processing settings took: 0.286 secs
[INFO] [o.g.BuildLogger] Settings evaluated using empty settings script.
[DEBUG] [o.g.i.ProjectPropertySettingBuildLoader] Looking for project properties from: /home/me/dev/yourProject/gradle.properties
[DEBUG] [o.g.i.ProjectPropertySettingBuildLoader] project property file does not exists. We continue!
[INFO] [o.g.BuildLogger] Projects loaded. Root project using build file '/home/me/dev/yourProject/build.gradle'.
9条答案
按热度按时间uxhixvfz1#
问题是我做了一个不正确的假设,如果你看section 14.2 of the gradle documentation,它会说:
您可以将gradle.properties文件放置在Gradle用户主目录(由“GRADLE_USER_HOME”环境变量定义,如果未设置,则默认为USER_HOME/.gradle)或项目目录中。
我错误的假设是USER_HOME默认为标准的linux HOME环境变量,这是不正确的。
只要我在
~/.bashrc
中输入export USER_HOME=$HOME
,一切都正常k75qkfdt2#
默认情况下,没有设置
GRADLE_USER_HOME
,它应该工作,我在v3.5
中测试了它。但是要确保你是不是以正确的用户身份运行它。例如,如果你使用
sudo
执行你的./gradlew build
,那么你的主文件夹中的gradle.properties
将不会被拾取。要确保默认的***gradle用户主页***,您可以使用
--debug
选项运行gradle并查看下面的行,[调试] [组织.gradle.内部.构建事件.构建记录器] Gradle用户主页:
velaa5lx3#
一个快速而简单的解决方案是将www.example.com放在gradle.properties您的build.gradle旁边,这样就可以保证它被读取。我知道这并不能解决公共属性的单一集中源,但至少它是一个东西。
ukxgm1gy4#
我使用的是Windows,遇到了同样的问题。我注意到我的~/.gradle/gradle.properties文件有字节顺序标记(BOM)在开始,我认为它有windows行结束(\r\n)。我通过删除~/. gradle/gradle.properties文件,然后使用vim创建一个新文件,并使用UNIX行尾(\n)的内容与之前相同,然后它开始工作。我不知道是BOM、行尾还是两者的组合导致了这个问题,但我认为我应该分享这个信息,以防其他人也有同样的原因导致这个问题。
9w11ddsr5#
我在Android Studio中检查了代理设置,但没有选择代理。
我做了无效缓存和重新启动没有运气。
我在防火墙中添加了一个例外,仍然没有运气。
在项目
gradle.properties
中,我没有代理配置。它是空的,只有注解。在之前版本的Android Studio中,我启用了全局代理设置,它是存储在我的用户配置文件
%userprofile%\.gradle\gradle.properties
中的一个文件删除这个文件中的代理行,解决了我的问题。我必须重新启动Android Studio才能使它工作。
:)
vpfxa7rd6#
我自己在通过gradlew进行apk构建时也遇到了这个问题。我之前尝试过为上述错误设置Gradle_user_home,但没有用,下面的解决方案对我很有效。
我对www.example.com进行了以下配置gradle-wrapper.properties:
gradlew本身会在运行时从上述配置(distributionUrl)下载正确的gradle发行版。
tez616oj7#
我也遇到过同样的问题,并通过使用gradle binary来构建,而不是使用android project自带的wrapper来解决。您可以从这里安装gradle:https://docs.gradle.org/current/userguide/installation.html#installation
然后使用系统范围的gradle在项目根目录上进行构建,而不是使用 Package 器,例如:
3b6akqbq8#
我犯了一个不同的错误。为什么我在“intelligent idea”中设置了这个字段?:)但是,当我在这个字段中输入正确的值时,我gradle.properties从.gradle中正确阅读www.example.com
some setting in Idea
zbsbpyhn9#
我注意到显示
"project property file does not exists. We continue!"
是因为脚本将在不同的路径中搜索gradle属性。它将检查root/gradle.properties和root/app/gradle.properties中的内容,因此它将仅添加找到的内容中的内容,并显示另一个内容中的“错误”。
但是,在日志中,您实际上可以看到从读取文件添加的属性: