Tag: sbt

添加播放JSON库到sbt

我如何添加Play JSON库( play.api.libs.json )到我的sbt项目? 当我将以下内容添加到我的plugins.sbt文件中时: addSbtPlugin("play" % "sbt-plugin" % "2.1.0") 我遇到了这个错误: [warn] :::::::::::::::::::::::::::::::::::::::::::::: [warn] :: UNRESOLVED DEPENDENCIES :: [warn] :::::::::::::::::::::::::::::::::::::::::::::: [warn] :: play#sbt-plugin;2.1.0: not found [warn] :::::::::::::::::::::::::::::::::::::::::::::: 我没有find这个库的parsing器,否则我会添加它,并运行sbt update 。 请注意,我的resolvers包括http://repo.typesafe.com/typesafe/releases/ 。

我可以从代码访问我的Scala应用程序的名称和版本(在SBT中设置)吗?

我正在用SBT(0.11.0)构build一个应用程序,使用Scala构build定义,如下所示: object MyAppBuild extends Build { import Dependencies._ lazy val basicSettings = Seq[Setting[_]]( organization := "com.my", version := "0.1", description := "Blah", scalaVersion := "2.9.1", scalacOptions := Seq("-deprecation", "-encoding", "utf8"), resolvers ++= Dependencies.resolutionRepos ) lazy val myAppProject = Project("my-app-name", file(".")) .settings(basicSettings: _*) […] 我在过程结束时打包了一个.jar文件。 我的问题是一个简单的问题:是否有一种方法从我的Scala代码以编程方式访问应用程序名称(“my-app-name”)和版本(“0.1”)? 如果我能帮到的话,我不想在两个地方重复。 任何指导非常感谢!

使用SBT创build独立的jar

我是一个沉重的Maven用户,现在我正在逐步将SBT用于我的一些项目。 我想知道如何使用SBT创build一个独立的Java项目? 这个项目应该打包成一个JAR文件,这个JAR文件将被用作另一个SBT项目的依赖项。 在Maven中,我可以在我的pom.xml告诉我在构build它时应该生成哪种types的工件。 SBT有类似的东西吗?

如何运行sbt程序集命令没有从命令行testing?

我读过的问题是: 这个和那个 。 他们build议修改sbt文件。 但是我想运行sbt clean assembly没有testing,不要修改sbt生成文件。 是否有可能与sbt? 在maven中有-DskipTest=true参数,有没有模拟sbt?

-Ywarn-unused-import触发播放路由文件

我希望能够使用-Xfatal-warnings和-Ywarn-unused-import ,问题是编译器在包含我的应用程序的播放path的文件上触发错误: [error] /path/to/app/conf/routes: Unused import [error] /path/to/app/conf/routes: Unused import [error] /path/to/app/conf/routes:1: Unused import [error] GET /document/:id my.app.controllers.MyController.getById(id: Int) 其他路线也一样。 是否有可能告诉scalac忽略文件? 斯卡拉版本是2.11.8 。

sbt:如何将本地文件系统jar添加到我的项目中?

我有一个库编译到一个库(不是一个sbt项目,只是jar文件),这是不可用的库。 有没有一种简单的方法直接在文件系统/项目中添加对jar的引用?

彩色terminal输出如何被禁止/播放?

我想禁用从sbt / playlogging的颜色转义码。 这可能吗? 如果是这样,有没有办法做到这一点,而不需要改变configuration – 即通过命令行开关或系统属性。

SBT编译用于播放框架2.x默认禁用

我使用activator, activator new my-project-name创build了一个新的Play Framework项目,然后select了play-java模板,并创build了没有错误的项目。 然后,我将项目导入到我的IDE IntelliJ中,作为SBT项目。 当项目被导入时,会显示一个popup窗口: SBT compilation for play framework 2.x disabled by default 在IntelliJ项目的面板上,它不显示所有(主要是代码文件)文件。 只有less数他们。 build.sbt文件看起来像是编译错误(几乎所有的行都是红色下划线的)。 这是build.sbt文件 name := """my-project-name""" version := "1.0-SNAPSHOT" lazy val root = (project in file(".")).enablePlugins(PlayJava) scalaVersion := "2.11.6" libraryDependencies ++= Seq( javaJdbc, cache, javaWs ) // Play provides two styles of routers, one expects its actions […]

在Ubuntu上安装sbt

我在Ubuntu上安装了sbt。 :~/bin/sbt/bin$ ls classes sbt sbt-launch.jar target jansi.jar sbt.bat sbt-launch-lib.bash win-sbt 然而,每当我尝试启动sbt(从sbt所在的同一目录),它不起作用: No command 'sbt' found, did you mean: Command 'skt' from package 'latex-sanskrit' (universe) Command 'sb2' from package 'scratchbox2' (universe) Command 'sbd' from package 'cluster-glue' (main) Command 'mbt' from package 'mbt' (universe) Command 'sbmt' from package 'atfs' (universe) Command 'lbt' from package 'lbt' (universe) […]

多项目中的SBTtesting相关性:使testing代码适用于相关项目

我有一个SBT多项目,其中一些项目相互依赖。 喜欢这个: lazy val coreProject: Project = Project( id = "core-project", base = file("./core-project"), // other stuff )) lazy val extensions: Project = Project( id = "extensions", base = file("./extensions"), dependencies = Seq(coreProject) ) 现在我在test-folder的'core'项目中有一些testing代码。 还有像嘲笑和testing实用程序的东西。 现在我想在扩展的testing中使用这些testing实用程序。 对于生产代码这个工作,因为我宣布了依赖。 但是,依赖关系似乎不适用于testing。 当我运行testing时,我得到缺less类的编译错误。 这些类来自核心项目中的testing代码。 我怎么能告诉sbt依赖关系还应该包含testing范围的testing代码? 所以我可以在“exension”项目的testing代码中重复使用我的模拟?