我正在开发一个带有Play 2的网站,并且在依赖方面遇到了一些麻烦。我在文档中搜索,但没有发现任何相关内容。在SBT中独立的Play 2项目之间共享相关性?
这里是我的项目的结构:
api
- 包含我的模型,服务控制器一个播放2应用等commons
- 一个播放2应用程序,它提供了一些实用工具类,贝宝集成等
我api
在api/build.sbt
增加了一个依赖于commons
。在commons
我添加以下依赖贝宝:
"com.paypal.sdk" % "rest-api-sdk" % "0.7.1"
我认为我不得不只在commons
添加这种依赖性。但是当我在api
中使用与PayPal交互的类时,我有ClassNotFound
错误。
SBT不应该检索commons
的依赖关系commons
在api
?
如果我在api/build.sbt
中向PayPal添加依赖项,一切正常,但我在这两个地方都有这种依赖关系。
编辑亚切克质疑
- 播放2版本:2.2.0
api
和commons
是两个独立的SBT项目(无根项目)api
和commons
之间- 依赖于
api/build.sbt
:
libraryDependencies ++= Seq( // Other dependencies ... "com.mycompany" %% "commons" % "1.0.0" )
你使用了什么样的Play版本? 'api'和'commons'两个独立的SBT项目没有父母/根SBT项目吗?你是如何定义'commons'和'api'之间的依赖关系的?你可以运行'树'或类似的东西来显示项目结构?我最感兴趣的是带有'build.sbt'和'project/*。scala'文件的目录。 –
我编辑了这个问题,这里有一个'play dependencies'的pastebin:http://pastebin.com/kxRS1tdK – c4k