Scala 如何利用JAR和WAR构建SBT项目?
我之前问了一个关于如何将SBT用于多个子项目web应用程序的问题。这非常好,但是现在我正在尝试创建一个子项目,它不应该是一个webapp,而是其他webapp项目将依赖的(通用模型等)。有没有办法将此子项目与其他web应用程序子项目一起设置,或者我应该创建一个单独的项目AllToGetter,创建一个jar,并让我的web应用程序将其作为库依赖项 目前,我将中的非webapp项目的代码作为子项目,其他子项目依赖于它,即Scala 如何利用JAR和WAR构建SBT项目?,scala,sbt,web-application-project,Scala,Sbt,Web Application Project,我之前问了一个关于如何将SBT用于多个子项目web应用程序的问题。这非常好,但是现在我正在尝试创建一个子项目,它不应该是一个webapp,而是其他webapp项目将依赖的(通用模型等)。有没有办法将此子项目与其他web应用程序子项目一起设置,或者我应该创建一个单独的项目AllToGetter,创建一个jar,并让我的web应用程序将其作为库依赖项 目前,我将中的非webapp项目的代码作为子项目,其他子项目依赖于它,即 lazy val admin = Project("admin", fil
lazy val admin = Project("admin", file("admin")) dependsOn(common) settings(webappSettings :_*)
// ^^^^ defines the dependency
... other project definitions
lazy val common = Project("common", file("common"))
这是可行的,但当我打包应用程序时,会得到一个common.war
我可能还应该提到,公共项目确实包含一些依赖于Lift的与web相关的代码,但我希望它打包为一个jar,而不是一个war。。。哦,webapp wars似乎将实际的类包含在公共项目生成的war中
那么,我应该如何:
- 创建一个
项目,该项目包含与web相关的代码(例如,需要运行使用jetty的测试),但要编译成jarcommon
- 是否在我的web应用程序项目中包含
项目公共
项目是否可以/应该作为子项目与我的web应用程序一起包含公共
项目
构造函数的最后一个参数,将dependsOn
作为最后一个参数,如。你试过了吗?我不知道为什么你的行为会像你描述的那样,特别是为了“公共”项目而发动战争。我有一个项目,它构建了一个jar和一个war,您可能想看看。