我正在开发一个 Grails 2.0.x 应用程序,它当然有几个外部依赖项。由于我坐在公司防火墙后面,因此我已将其配置ProxySettings.groovy
为允许访问互联网,这应该可以正常工作。
现在我们还需要包含对一些本地工件(来自其他项目)的依赖项,这些工件可以在我们的本地 Maven 存储库中找到。我们的公司网络设置仅将代理用于外部站点,而不是内部站点。因此,当 Grails 在启动时解决我的依赖项时,它会很好地下载所有外部工件,但在尝试获取我们的本地依赖项时会失败。如果我完全删除了我的ProxySettings.groovy
-file 的内容,那么情况正好相反,Grails 无法解析外部依赖项,但确实设法从我们的本地 Maven 存储库下载 JAR。
我试图找到有关如何从使用 Grails 中的代理设置中排除内部站点的文档,但到目前为止都失败了。
另一种选择可能是在BuildConfig.groovy
调用之前以编程方式删除(或更改)代理设置mavenRepo
?
目前我们没有使用 Maven 来构建我们的 Grails 项目(因为我们之前在构建服务器上创建发布版本时遇到了一些问题)。
任何帮助将非常感激!
问问题
1804 次
1 回答
2
现在我不认为有一个简单的方法来解决这个问题。
目前有一个开放的错误,能够以编程方式切换代理设置
http://jira.grails.org/browse/GRAILS-7658
另一种选择是在您的 grails 项目中移动内部依赖项。
或者你可以在 BuildConfig.groovy 中转储所有内容
System.properties.putAll([
"http.proxyHost": "myproxy.hostname.com",
"http.proxyPort": "8080",
"http.proxyUserName": "myUser",
"http.proxyPassword": "myPass"
])
清除它的内部依赖关系,然后你可能会很好。
于 2012-05-01T14:16:16.743 回答