我只是在测试一个 gradle(这个领域的绝对菜鸟)。
我正在 Windows 盒子上尝试这个。我曾经让 Maven 从同一台机器上为我进行构建和发布。它位于具有 NTLM 身份验证的代理后面。而这曾经工作得很好。然而,不知何故,Gradle 并没有为我这样做。
我的 build.gradle 有以下配置(除了其他)
// Java plugin to build our JAR artifact.
apply plugin: 'java'
// Build stuff with jdk 1.7
sourceCompatibility = 1.7
targetCompatibility = 1.7
// Regular name and version for your project.
group = 'foo.bar.gradle'
version = '1.0-SNAPSHOT'
// The local maven repository
def localMavenRepo = 'file://C:/ProgramFiles/MavenRepository'
repositories {
// Use the maven central repository.
mavenCentral()
// ... and the local maven repository.
maven { url localMavenRepo }
// maven { url 'http://www.springsource.com/repository/' }
}
dependencies {
compile 'org.databene:contiperf:2.2.0','org.springframework:spring-webmvc:3.2.0.RELEASE'
testCompile 'junit:junit:4.11'
/*compile.exclude module: 'commons'*/
/*all*.exclude*/
}
我的 /gradle.properties 有以下设置
systemProp.proxySet=true
systemProp.http.proxyHost=<proxy name, same as that set in Maven>
systemProp.http.proxyPort=8080
systemProp.http.proxyUser=<domain name>/<user name>
但是,当我运行它时,出现以下错误
NEGOTIATE authentication error: No valid credentials provided (Mechanism level:
No valid credentials provided (Mechanism level: Failed to find any Kerberos tgt)
)
这是在 Gradle 的 1.3 版中。请帮忙。
更新: 我现在已经更新到 gradle-1.4-rc-3 我的 gradle.properties 文件现在看起来像这样
systemProp.proxySet="true"
systemProp.http.keepAlive="true"
systemProp.http.proxyHost=<proxy name>
systemProp.http.proxyPort=8080
systemProp.http.proxyUser=<domain name>/<username>
但我仍然继续看到这个问题。我还有一些日志。我在 STS (IDE) 中看到了这个
Could not GET 'http://repo1.maven.org/maven2/org/spr...'. Received status code 500 from server: Internal Server Error
Could not execute build using Gradle installation 'C:\ProgramFiles\gradle-1.4-rc-3'.
不,凭据没有错。在相同的设置中,具有相同值的 Maven 工作正常。不, gradle.properties 也在正确的位置。如果我更改代理的值,则错误会更改。因此,该工具肯定是在读取 gradle.properties 文件。