java - maven project 和 sbt project and play framework 是否考虑共享一个存储库?

标签 java scala maven playframework typesafe-activator

我开始处理一组 Maven 项目、一个 Scala 项目和一个 Play 项目。

使用默认配置,它们每个的默认存储库是:

  • maven @/Users/Barry/.m2/repository
  • sbt @/Users/Barry/.ivy2
  • 激活器@/Users/geek/Runtimes/activator-1.2.1/repository

为什么有这么多不同的存储库?当我使用所有 3 个构建工具时,我可以选择将所有库存储在一个存储库中吗?

并且Play 2.1也有缓存目录,这会导致我在重新构建具有相同发布版本的maven项目,然后从maven项目中编译具有相同依赖项的play项目时出现困惑。

这种情况有什么好的做法吗?

谢谢。

最佳答案

在这种情况下,您可以使用第四个远程存储库在它们之间共享 Artifact :虽然每个构建工具都需要自己的本地“缓存”,但您将拥有所有它们的公共(public)存储库,然后您可以不时清除这些缓存如果它占用太多空间。

您可以使用 Sonatype Nexus 等工具创建远程存储库,或者将本地或网络目录视为远程存储库(Maven 支持这种远程存储库,我认为 SBT 也支持)。

关于java - maven project 和 sbt project and play framework 是否考虑共享一个存储库?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24186221/

相关文章:

java - 在 Joda-Time 间隔中查找漏洞

scala - 无法连接到在 docker 中运行的 tcp 端口

java - 如果尝试在 RestHelper 类中使用相同路径添加 JsonPut 和 JsonPost 方法,则无法编译代码

maven - maven 不使用 pom.xml 中指定的存储库?

java - Maven-shade-plugin、uber-jar 和重叠类

maven - 鉴于它在 Maven 中的坐标,我如何检查 Artifact 源?

java - 在 java 或 scala 中使用 dbpedia spotlight

java - 获取 http://localhost:8080/resources/css/index.css net::ERR_ABORTED 404

java - <h :CommandButton> action attribute not working in JSF 1. 2

scala - "=>"在 Scala 中的导入是什么意思?