我必须在我的java/maven heroku应用程序中使用非托管的SNAPSHOT依赖项。 我这样做使用项目本地的Maven仓库在this article.如何清理Heroku的依赖缓存(非托管的Maven依赖)
Heroku缓存构建之间的依赖关系。不幸的是,Heroku没有注意到SNAPSHOT版本是否改变并继续使用缓存的依赖关系。这会导致编译错误,因为我依赖于SNAPSHOT版本的更改。
有没有办法手动或自动清理这个依赖缓存?
我发现这个maven plugin(它做了一个本地构建,并将产生的文物推向heroku),但它并不是我想要做到的。
有人可能会认为它的糟糕做法是首先使用这个快照依赖关系,但我认为还有其他或多或少有效的理由来清理现金,因为如果从项目本地存储库中删除非托管依赖项,它们甚至不会被删除。
我很欣赏你的答案
感谢您的回复。正如所料,使用buildpack会导致相当长的依赖下载。不幸的是,我现在得到以下错误:'不能将工件::pom:1.3-SNAPSHOT从/移至project.local(file:/ tmp/build_asdf/repo):校验和验证失败,预期,但是'。在构建工件时使用'-DcreateChecksum = true'并没有帮助。 –
mulrich
2013-03-25 13:04:04
为了解决校验和问题,它有助于从(项目本地)存储库标记中除去 fail checksumPolicy>。 –
mulrich
2013-03-25 14:36:55
我正在更新。事实上,历史部分也许应该用一个删除线来表明,heroku插件是迄今为止的首选方式。 – 2014-09-18 13:56:40