Grails clean 命令在 Ubuntu docker 容器中给出错误

Posted

技术标签:

【中文标题】Grails clean 命令在 Ubuntu docker 容器中给出错误【英文标题】:Grails clean command giving error in Ubuntu docker container 【发布时间】:2021-09-27 11:05:37 【问题描述】:

我试图在 Docker 容器中运行的 Ubuntu 机器上运行 Grails -clean 命令,但出现以下错误:

$ grails clean

| Loading Grails 2.4.0
| Configuring classpath
| Error Resolve error obtaining dependencies: Failed to read artifact descriptor for xalan:serializer:jar:2.7.1 (Use --stacktrace to see the full trace)
| Error Required Grails build dependencies were not found. This is normally due to internet connectivity issues (such as a misconfigured proxy) or missing repositories in grails-app/conf/BuildConfig.groovy. Please verify your configuration to continue.

由于这个问题,我无法继续使用 grails 部署 war 文件。我检查了“BuildConfig.groovy”并添加了一些存储库以及在各种门户中提到的,但没有运气。一次又一次地得到同样的错误。

我们将不胜感激。

谢谢, 阿克沙特

【问题讨论】:

您是否使用了 --stacktrace 来查看完整的跟踪信息?您是否确认您的代理设置正确?如果您已完成这些操作,请同时从 BuildConfig.groovy 发布您的存储库部分。 您好丹尼尔,感谢您的回复。你能告诉我如何检查 docker 容器中的 --stacktrace 吗?另外,请建议如何验证容器内运行的Ubuntu系统的代理设置? 运行 grails clean --stacktrace 以查看完整输出。 (你也可以使用--verbose;我不记得这是否会给你带来更多帮助。) 至于代理设置:你能下载其他依赖项吗? 您好丹尼尔,感谢您的回复。当然,我会检查堆栈跟踪输出。关于代理设置,下载其他依赖项到底是什么意思?请推荐! 要么您的依赖项 grails 找不到,要么您的 grails 应用程序无法与 Internet 通信。如果您可以获得一些依赖项,但不是这个特定的,那么这个特定的就有问题。如果您无法获得任何信息,则几乎可以肯定是网络问题。配置代理的方法有很多种,将 docker 添加到组合中只会让您找到另一种方法,但第 1 步是确定这是否是问题所在。堆栈跟踪应该会有所帮助。 【参考方案1】:

尝试使用 https 而不仅仅是 http。

    mavenRepo "https://repo.grails.org/grails/core"
    mavenRepo "https://repo.grails.org/grails/plugins"

由于 Java 8 默认为 TLS 1.2,因此请尝试在 Java 7 上运行 Java 8。

【讨论】:

嗨,Joe,我只在 BuildConfig.groovy 文件中使用 https 来定义 maven 存储库。你能告诉我我还能检查什么吗? 尝试在 Docker 容器中获取一个 bash shell,看看是否可以对容器外部的位置执行 curl 命令。 docker exec -it bash 感谢乔的回复。实际上我在 Gitlab 管道中运行它,所以我想我不会知道容器 ID 来在管道作业的 docker“exec”命令中定义它。请推荐! 直接在 Gitlab 管道服务器上尝试构建,看看是否可以先。 你能在你自己的机器上清理构建它吗?如果您在自己的机器上构建,请删除您的 Maven 缓存。 C:\Users\youruserid\.m2

以上是关于Grails clean 命令在 Ubuntu docker 容器中给出错误的主要内容,如果未能解决你的问题,请参考以下文章

在 grails clean 之后我无法运行应用程序

如何从 Grails 命令/SDK 中清除 Maven 缓存?

ubuntu2004开机后卡在clean正常吗

以eclipse -clean命令从命令行启动 eclipse

Grails 2.3.7 Optimistic Locking 版本在每次提交命令对象时更新

maven clean install命令报错 Failed to execute goal org.apache.maven.plugins:maven-clean-plugin: