我與這個掙扎了很長一段時間,所以任何幫助,將不勝感激。
我有具有相關性,我需要樹蔭sbt-assembly
公用庫myCommonLib
。
當我將它發佈到我的地方常春藤回購,我得到2個版本,一個「正常」的一個(像往常一樣),和一個陰涼的一個(使用捆綁的所有依賴),用「 - 裝配」追加,當然。SBT組裝,常春藤,類路徑
問題是,當我用我的「正常」的依賴,我得到NoClassDefFoundError
,指的陰影版本!
我試圖從classpath中像這樣完全刪除:
dependencyClasspath in Runtime := {
val allFiles: Seq[Attributed[File]] = (dependencyClasspath in Runtime).value
allFiles.filterNot(_.data.getName.toLowerCase.contains("-assembly"))
}
,但它不工作,還是同樣的錯誤。
<artifact name="myCommonLib_2.11" type="jar" ext="jar" conf="compile,runtime,test,provided,optional,sources,docs,pom" e:classifier="assembly"/>
我缺少什麼:
然而,當我從常春藤XML它的工作將其刪除(註釋掉)?
謝謝,但[SBT文檔(http://www.scala-sbt.org/0.13/docs/Library-Management.html#E xclude +傳遞+依賴性)說,「要排除某些**傳遞依賴**的依賴關係,請使用EXCLUDEALL或排除方法」。這不是傳遞依賴,它是模塊本身的一部分..(只是另一個工件) –