[英]SBT Dependency Resolution Failure with vespa.ai
我已經將Vespa添加到sbt項目中:
libraryDependencies += "com.yahoo.vespa" % "vespa-http-client" % "6.225.3"
這導致以下模塊解析失敗:
[warn] Detected merged artifact: [FAILED ] com.yahoo.vespa#component;6.225.3!component.container-plugin: (0ms).
[warn] Detected merged artifact: [FAILED ] com.yahoo.vespa#vespajlib;6.225.3!vespajlib.container-plugin: (0ms).
[warn] ==== local: tried
[warn] ==== local: tried
[warn] ==== public: tried
[warn] ==== public: tried
[warn] ==== local-preloaded-ivy: tried
[warn] https://repo1.maven.org/maven2/com/yahoo/vespa/component/6.225.3/component-6.225.3.container-plugin
[warn] C:\Users\gary\.sbt\preloaded\com.yahoo.vespa\vespajlib\6.225.3\container-plugins\vespajlib.container-plugin
[warn] ==== local-preloaded-ivy: tried
[warn] ==== local-preloaded: tried
[warn] C:\Users\gary\.sbt\preloaded\com.yahoo.vespa\component\6.225.3\container-plugins\component.container-plugin
[warn] file:/C:/Users/gary/.sbt/preloaded/com/yahoo/vespa/vespajlib/6.225.3/vespajlib-6.225.3.container-plugin
[warn] ==== local-preloaded: tried
[warn] file:/C:/Users/gary/.sbt/preloaded/com/yahoo/vespa/component/6.225.3/component-6.225.3.container-plugin
較舊版本和最新sbt(1.1.1)均失敗。
默認情況下,SBT使用工件的打包類型作為文件擴展名。 我們用於component
工件(以及很多其他component
pom.xml使用包裝類型container-plugin
,而實際的jar文件當然具有標准的jar
后綴。
因此,您需要使用這些后綴的文件后綴手動配置SBT。 我不知道是否有一種便捷的方法可以立即對一組依賴項執行此操作,因為我不是SBT專家。 但是對於您收到此錯誤的每個工件,您可以嘗試以下操作:
libraryDependencies += "com.yahoo.vespa" % "component" % "6.225.3" artifacts( Artifact("component", "", "jar"))
我在這個答案中找到了它,而我自己還沒有對其進行測試。 也許您可以在SBT參考手冊“ 將依賴項與工件一起使用”中找到一些有用的信息。
以下是vespa-http-cient的依賴項: https : //github.com/vespa-engine/vespa/blob/master/vespa-http-client/pom.xml我不太了解SBT,也許您需要明確包含那些依賴關系,或指定包含傳遞依賴關系。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.