我正在使用 bitbucket-pipelines 为我公司的 mulesoft API 设置部署管道。由于与 Jira 的内置集成,这项技术对我们很有吸引力。问题是我们正在使用域项目。所有其他依赖项都是从 anypoint exchange 下载的,但域项目不能托管在那里,所以我收到这个错误:
[ERROR] Failed to execute goal on project sourceControlDemo: Could not resolve dependencies for project com.mycompany:sourceControlDemo:mule-application:1.0.0-SNAPSHOT: Could not find artifact com.mycompany:[mycompany]-domain:jar:mule-domain:1.0.0 in anypoint-exchange (https://maven.anypoint.mulesoft.com/api/v1/maven) -> [Help 1]
org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal on project sourceControlDemo: Could not resolve dependencies for project com.mycompany:sourceControlDemo:mule-application:1.0.0-SNAPSHOT: Could not find artifact com.mycompany:[mycompany]-domain:jar:mule-domain:1.0.0 in anypoint-exchange (https://maven.anypoint.mulesoft.com/api/v1/maven)
Run Code Online (Sandbox Code Playgroud)
在我们当前的过程中,涉及在本地构建项目,域项目包含在工作区中,不会发生此错误。
似乎这里有一些策略: * 创建一个包含依赖项的自定义 docker 映像 - 这个选项似乎有点过分,对我来说是最大的技能差距,因为我从未使用过 docker。* 将域项目托管在要在依赖项目 pom.xml 中引用的私有 Maven 存储库上 - 这似乎是执行此操作的“正常”方式。然而,对于一个依赖项来说,这似乎又是一种矫枉过正。* 在管道文件中克隆域项目存储库,自动将项目安装在本地存储库中 - 这是我非常喜欢的选项。我已经成功克隆了 repo …