所以我一直试图让IDEA 12.0与Play 2.1.0和Scala 2.10.0一起使用.我只是放弃了,因为它不像我想要的那样对我有用.这是我的一个副本build.properties,Build.scala和plugins.sbt.我按照playframework网站上的方法在idea with-sources=yesPlay控制台中执行.我也尝试添加sbt-idea插件版本1.3.0-SNAPSHOT,如插件中所示,但是如果我想引用刚刚创建的新视图模板或新路由,似乎没有任何效果.我可以在IDEA中工作的唯一方法是,如果我打开并运行控制台sbt compile,请返回IDEA,它将刷新自身并识别新的视图模板或路径.
plugins.sbt
logLevel := Level.Warn
scalaVersion := "2.10.0"
// The Typesafe repository
resolvers += "Typesafe repository" at "http://repo.typesafe.com/typesafe/releases/"
// Sonatype snapshots to get sbt-idea 1.3.0-SNAPSHOT
//resolvers += "Sonatype snapshots" at "http://oss.sonatype.org/content/repositories/snapshots/"
// Use the Play sbt plugin for Play projects
addSbtPlugin("play" % "sbt-plugin" % "2.1.0")
//addSbtPlugin("com.github.mpeltonen" % "sbt-idea" % "1.3.0-SNAPSHOT")
Run Code Online (Sandbox Code Playgroud)
build.properties
sbt.version=0.12.2
Run Code Online (Sandbox Code Playgroud)
Build.scala
import sbt._
import Keys._
import play.Project._
object ApplicationBuild extends Build …Run Code Online (Sandbox Code Playgroud) 我按照native目录中的BUILDING.txt中的说明进行操作
./configure --with-apxs=/usr/sbin/apxs
Run Code Online (Sandbox Code Playgroud)
这是一些输出
building connector for "apache-2.0"
checking for gcc... /Applications/Xcode.app/Contents/Developer/Toolchains/OSX10.8.xctoolchain/usr/bin/cc
checking for C compiler default output file name... configure: error: C compiler cannot create executables
See `config.log' for more details.
Run Code Online (Sandbox Code Playgroud)
当然,我搜索StackOverflow寻求解决方案,因为gcc不在/usr/bin.所以我打开了XCode并安装了命令行工具.GCC现在在/ usr/bin ...但我一直得到同样的错误.
有任何想法吗?
当喷雾(spray.io)产生排斥时,它会响应弦体.由于我的所有API客户端都会假设我的API只返回json,我希望全局使每个拒绝都成为符合我们的错误对象格式的有效json对象.我怎样才能做到这一点?
错误对象格式如下所示
{
'details' : 'Something happened in the app. boooo!',
'errorType' : 'Unknown'
}
Run Code Online (Sandbox Code Playgroud)
errorType是我的内部枚举式值列表,如UserNotFound和NeedPaidAccount
所以这就是我的困境:我有一个域模型,在scala中有一堆case类,比如User和Organization.在我的数据访问层(dao,存储库等)中,我使用的是astyanax(来自netflix的java库),它的实体持久化将对象保存到cassandra列族.
这是我的cassandra/astyanax支持的DAO的一些示例代码(是的,我知道我需要做更多的scala-ish,但我还在学习=))
通过这个啰嗦的描述看完后,我基本上想看看,为什么在参数列表中注释的瓦尔斯将无法正常工作时,Java并getDeclaredAnnotations()在Field我会讨厌要回去和重构一切,所以我可以用它的持留保存实体(即manager.put(entity))非常简单.如果我想继续使用case类,以便我可以使用更多不可变的样式scala和Lensscalaz,那么我将不得不更新DAO并手动执行所有持久化操作,这可以真正消磨时间.
所以,如果有人知道我没有看到的东西,请告诉我!提前感谢您花时间阅读本文.
场景1 - 案例类
Astyanax没有拿起注释@Id val
@Entity
case class Organization(@Id @Column(name = "id") override val id: Option[UUID] = None,
@Column(name = "created_on") override val createdOn: Option[Date] = None,
@Column(name = "modified_on") override val modifiedOn: Option[Date] = None,
@Column(name = "name") name: Option[String] = None,
@Column(name = "is_paid_account") isPaidAccount: Boolean = false) extends IdBaseEntity[UUID](id, createdOn, modifiedOn)
场景2 - 具有伴随对象的类或没有伴随对象的类
Astyanax没有拿起@Id注释 val
@Entity class Organization(@Id @Column(name = …
我补充道
<dependency>
<groupId>org.jboss.resteasy</groupId>
<artifactId>resteasy-jaxrs-all</artifactId>
<version>2.2.1.GA</version>
<scope>provided</scope>
</dependency>
Run Code Online (Sandbox Code Playgroud)
我正在使用
<repositories>
<repository>
<id>jboss</id>
<url>http://repository.jboss.org/nexus/content/groups/public</url>
</repository>
</repositories>
Run Code Online (Sandbox Code Playgroud)
当我尝试构建时,我收到以下错误.我究竟做错了什么?
[错误]无法在项目tapvox-api上执行目标:无法解析项目com.myproject.api的依赖关系:myproject-api:war:1.0-SNAPSHOT:找不到工件org.jboss.resteasy:resteasy-jaxrs-all :jar:2.2.1.GA in jboss(http://repository.jboss.org/nexus/content/groups/public) - > [帮助1]