我刚刚从maven切换到sbt进行Scala构建。由于部分构建也是war文件,我使用xsbt-web-plugin使用sbt创建war文件。一切正常,除了输出的WAR有一个问题。
WAR dependsOn
其他两个子项目(传递)。当我运行包时,其他子项目的类和资源都被合并和复制了。这也意味着application.conf
被最近定义的dependsOn
覆盖,而不是合并。
maven是如何解决这个问题的,它包括每个依赖关系作为一个JAR文件在WEB-INF/lib
,然而,这是由于maven没有机制像dependsOn
和libraryDependencies
。
如何用xsbt-web-plugin解决这个问题?通过使用像OneJar这样的合并策略,或者我必须将WAR构建从其他构建中分离出来,并将它们定义为依赖关系。
好的,通过更多的搜索找出了它,https://github.com/earldouglas/xsbt-web-plugin/issues/111给出了正确的提示。
为dependsOn
模块设置exportJars := true