首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用xsbt-web-plugin进行SBT war部署

使用xsbt-web-plugin进行SBT war部署
EN

Stack Overflow用户
提问于 2014-04-28 17:33:04
回答 1查看 1.7K关注 0票数 0

我已经被SBT项目配置为使用xsbt- web -plugin进行web部署。描述这一点的文档似乎是:

xsbt-web-plugin Wiki

Publishing .war files

这是我到目前为止基于阅读文档所做的:

我用以下命令创建了plugins.sbt:

代码语言:javascript
复制
resolvers += "Web plugin repo" at "http://siasia.github.com/maven2"

addSbtPlugin("com.earldouglas" % "xsbt-web-plugin" % "0.9.0")

在build.sbt中添加了以下几行:

代码语言:javascript
复制
Seq(webSettings :_*)


// disable .jar publishing
publishArtifact in (Compile, packageBin) := false

// create an Artifact for publishing the .war file
artifact in (Compile, packageWar) := {
  val previous: Artifact = (artifact in (Compile, packageWar)).value
  previous.copy(`type` = "war", extension = "war")
}

// add the .war file to what gets published
addArtifact(artifact in (Compile, packageWar), packageWar)

当使用sbt加载项目时,插件会被下载,但随后会报告以下错误:

代码语言:javascript
复制
[error] Reference to undefined setting:
[error]
[error]   *:packageWar from *:$local (W:\Tempi\TempiJetty\build.sbt:48)
[error]      Did you mean compile:packageWar ?

在最后一行中写入compile:packageWar而不是packageWar会导致不同的错误:

代码语言:javascript
复制
[info] Loading project definition from W:\Tempi\TempiJetty\project
W:\Tempi\TempiJetty\build.sbt:48: error: not found: type packageWar
addArtifact(artifact in (Compile, packageWar), compile:packageWar)
                                                       ^
[error] Type error in expression

我应该写些什么才能让我的SBT项目支持war打包?

EN

回答 1

Stack Overflow用户

发布于 2014-04-28 22:36:31

似乎即使我删除了最后一行addArtifact(artifact in (Compile, packageWar), packageWar)sbt中的package命令仍然构建war文件。这可能是我正在使用的SBT 0.13的新特性或特定特性(文档似乎比较旧),或者可能是为了使用compile命令来打包war文件,而我并不需要这个命令。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23337456

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档