'''
[debug]
[debug] Initial source changes:
[debug] removed:Set()
[debug] added: Set()
[debug] modified: Set()
[debug] Removed products: Set()
[debug] External API changes: API Changes: Set()
[debug] Modified binary dependencies: Set()
[debug] Initial directly invalidated sources: Set()
[debug]
[debug] Sources indirectly invalidated by:
[debug] product: Set()
[debug] binary dep: Set()
[debug] external source: Set()
[debug] All initially invalidated sources: Set()
[debug] Copy resource mappings:
debug
java.lang.AbstractMethodError
at play.PlayInternalKeys$class.$init$(PlayInternalKeys.scala:20)
at com.github.play2war.plugin.Play2WarPlugin$.(Play2WarPlugin.scala:21)
at com.github.play2war.plugin.Play2WarPlugin$.(Play2WarPlugin.scala)
at CoPlayAuthenticationBuild$.warProjectSettings$lzycompute(Build.scala:103)
at CoPlayAuthenticationBuild$.warProjectSettings(Build.scala:103)
at CoPlayAuthenticationBuild$.mainProject$lzycompute(Build.scala:109)
at CoPlayAuthenticationBuild$.mainProject(Build.scala:108)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at sbt.ReflectUtilities$$anonfun$allValsC$1$$anonfun$apply$2.apply(ReflectUtilities.scala:50)
at sbt.ReflectUtilities$$anonfun$allValsC$1$$anonfun$apply$2.apply(ReflectUtilities.scala:48)
at scala.Option$WithFilter.foreach(Option.scala:208)
at sbt.ReflectUtilities$$anonfun$allValsC$1.apply(ReflectUtilities.scala:48)
at sbt.ReflectUtilities$$anonfun$allValsC$1.apply(ReflectUtilities.scala:44)
at scala.collection.IndexedSeqOptimized$class.foreach(IndexedSeqOptimized.scala:33)
at scala.collection.mutable.ArrayOps$ofRef.foreach(ArrayOps.scala:108)
at sbt.ReflectUtilities$.allValsC(ReflectUtilities.scala:44)
at sbt.ReflectUtilities$.allVals(ReflectUtilities.scala:64)
at sbt.Build$class.projects(Build.scala:14)
at CoPlayAuthenticationBuild$.projects(Build.scala:13)
at sbt.Build$class.projectDefinitions(Build.scala:13)
at CoPlayAuthenticationBuild$.projectDefinitions(Build.scala:13)
at sbt.Load$.sbt$Load$$projectsFromBuild(Load.scala:458)
at sbt.Load$$anonfun$24.apply(Load.scala:415)
at sbt.Load$$anonfun$24.apply(Load.scala:415)
at scala.collection.immutable.Stream.flatMap(Stream.scala:442)
at sbt.Load$.loadUnit(Load.scala:415)
at sbt.Load$$anonfun$15$$anonfun$apply$11.apply(Load.scala:256)
at sbt.Load$$anonfun$15$$anonfun$apply$11.apply(Load.scala:256)
at sbt.BuildLoader$$anonfun$componentLoader$1$$anonfun$apply$4$$anonfun$apply$5$$anonfun$apply$6.apply(BuildLoader.scala:93)
at sbt.BuildLoader$$anonfun$componentLoader$1$$anonfun$apply$4$$anonfun$apply$5$$anonfun$apply$6.apply(BuildLoader.scala:92)
at sbt.BuildLoader.apply(BuildLoader.scala:143)
at sbt.Load$.loadAll(Load.scala:312)
at sbt.Load$.loadURI(Load.scala:264)
at sbt.Load$.load(Load.scala:260)
at sbt.Load$.load(Load.scala:251)
at sbt.Load$.apply(Load.scala:134)
at sbt.Load$.defaultLoad(Load.scala:37)
at sbt.BuiltinCommands$.doLoadProject(Main.scala:473)
at sbt.BuiltinCommands$$anonfun$loadProjectImpl$2.apply(Main.scala:467)
at sbt.BuiltinCommands$$anonfun$loadProjectImpl$2.apply(Main.scala:467)
at sbt.Command$$anonfun$applyEffect$1$$anonfun$apply$2.apply(Command.scala:60)
at sbt.Command$$anonfun$applyEffect$1$$anonfun$apply$2.apply(Command.scala:60)
at sbt.Command$$anonfun$applyEffect$2$$anonfun$apply$3.apply(Command.scala:62)
at sbt.Command$$anonfun$applyEffect$2$$anonfun$apply$3.apply(Command.scala:62)
at sbt.Command$.process(Command.scala:95)
at sbt.MainLoop$$anonfun$1$$anonfun$apply$1.apply(MainLoop.scala:100)
at sbt.MainLoop$$anonfun$1$$anonfun$apply$1.apply(MainLoop.scala:100)
at sbt.State$$anon$1.process(State.scala:179)
at sbt.MainLoop$$anonfun$1.apply(MainLoop.scala:100)
at sbt.MainLoop$$anonfun$1.apply(MainLoop.scala:100)
at sbt.ErrorHandling$.wideConvert(ErrorHandling.scala:18)
at sbt.MainLoop$.next(MainLoop.scala:100)
at sbt.MainLoop$.run(MainLoop.scala:93)
at sbt.MainLoop$$anonfun$runWithNewLog$1.apply(MainLoop.scala:71)
at sbt.MainLoop$$anonfun$runWithNewLog$1.apply(MainLoop.scala:66)
at sbt.Using.apply(Using.scala:25)
at sbt.MainLoop$.runWithNewLog(MainLoop.scala:66)
at sbt.MainLoop$.runAndClearLast(MainLoop.scala:49)
at sbt.MainLoop$.runLoggedLoop(MainLoop.scala:33)
at sbt.MainLoop$.runLogged(MainLoop.scala:25)
at sbt.StandardMain$.runManaged(Main.scala:57)
at sbt.xMain.run(Main.scala:29)
at xsbt.boot.Launch$$anonfun$run$1.apply(Launch.scala:109)
at xsbt.boot.Launch$.withContextLoader(Launch.scala:129)
at xsbt.boot.Launch$.run(Launch.scala:109)
at xsbt.boot.Launch$$anonfun$apply$1.apply(Launch.scala:36)
at xsbt.boot.Launch$.launch(Launch.scala:117)
at xsbt.boot.Launch$.apply(Launch.scala:19)
at xsbt.boot.Boot$.runImpl(Boot.scala:44)
at xsbt.boot.Boot$.main(Boot.scala:20)
at xsbt.boot.Boot.main(Boot.scala)
[error] java.lang.AbstractMethodError
[error] Use 'last' for the full log.
[debug] > load-failed
[debug] > last
'''
''' [debug] [debug] Initial source changes: [debug] removed:Set() [debug] added: Set() [debug] modified: Set() [debug] Removed products: Set() [debug] External API changes: API Changes: Set() [debug] Modified binary dependencies: Set() [debug] Initial directly invalidated sources: Set() [debug] [debug] Sources indirectly invalidated by: [debug] product: Set() [debug] binary dep: Set() [debug] external source: Set() [debug] All initially invalidated sources: Set() [debug] Copy resource mappings: debug java.lang.AbstractMethodError at play.PlayInternalKeys$class.$init$(PlayInternalKeys.scala:20) at com.github.play2war.plugin.Play2WarPlugin$.(Play2WarPlugin.scala:21)
at com.github.play2war.plugin.Play2WarPlugin$.(Play2WarPlugin.scala)
at CoPlayAuthenticationBuild$.warProjectSettings$lzycompute(Build.scala:103)
at CoPlayAuthenticationBuild$.warProjectSettings(Build.scala:103)
at CoPlayAuthenticationBuild$.mainProject$lzycompute(Build.scala:109)
at CoPlayAuthenticationBuild$.mainProject(Build.scala:108)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at sbt.ReflectUtilities$$anonfun$allValsC$1$$anonfun$apply$2.apply(ReflectUtilities.scala:50)
at sbt.ReflectUtilities$$anonfun$allValsC$1$$anonfun$apply$2.apply(ReflectUtilities.scala:48)
at scala.Option$WithFilter.foreach(Option.scala:208)
at sbt.ReflectUtilities$$anonfun$allValsC$1.apply(ReflectUtilities.scala:48)
at sbt.ReflectUtilities$$anonfun$allValsC$1.apply(ReflectUtilities.scala:44)
at scala.collection.IndexedSeqOptimized$class.foreach(IndexedSeqOptimized.scala:33)
at scala.collection.mutable.ArrayOps$ofRef.foreach(ArrayOps.scala:108)
at sbt.ReflectUtilities$.allValsC(ReflectUtilities.scala:44)
at sbt.ReflectUtilities$.allVals(ReflectUtilities.scala:64)
at sbt.Build$class.projects(Build.scala:14)
at CoPlayAuthenticationBuild$.projects(Build.scala:13)
at sbt.Build$class.projectDefinitions(Build.scala:13)
at CoPlayAuthenticationBuild$.projectDefinitions(Build.scala:13)
at sbt.Load$.sbt$Load$$projectsFromBuild(Load.scala:458)
at sbt.Load$$anonfun$24.apply(Load.scala:415)
at sbt.Load$$anonfun$24.apply(Load.scala:415)
at scala.collection.immutable.Stream.flatMap(Stream.scala:442)
at sbt.Load$.loadUnit(Load.scala:415)
at sbt.Load$$anonfun$15$$anonfun$apply$11.apply(Load.scala:256)
at sbt.Load$$anonfun$15$$anonfun$apply$11.apply(Load.scala:256)
at sbt.BuildLoader$$anonfun$componentLoader$1$$anonfun$apply$4$$anonfun$apply$5$$anonfun$apply$6.apply(BuildLoader.scala:93)
at sbt.BuildLoader$$anonfun$componentLoader$1$$anonfun$apply$4$$anonfun$apply$5$$anonfun$apply$6.apply(BuildLoader.scala:92)
at sbt.BuildLoader.apply(BuildLoader.scala:143)
at sbt.Load$.loadAll(Load.scala:312)
at sbt.Load$.loadURI(Load.scala:264)
at sbt.Load$.load(Load.scala:260)
at sbt.Load$.load(Load.scala:251)
at sbt.Load$.apply(Load.scala:134)
at sbt.Load$.defaultLoad(Load.scala:37)
at sbt.BuiltinCommands$.doLoadProject(Main.scala:473)
at sbt.BuiltinCommands$$anonfun$loadProjectImpl$2.apply(Main.scala:467)
at sbt.BuiltinCommands$$anonfun$loadProjectImpl$2.apply(Main.scala:467)
at sbt.Command$$anonfun$applyEffect$1$$anonfun$apply$2.apply(Command.scala:60)
at sbt.Command$$anonfun$applyEffect$1$$anonfun$apply$2.apply(Command.scala:60)
at sbt.Command$$anonfun$applyEffect$2$$anonfun$apply$3.apply(Command.scala:62)
at sbt.Command$$anonfun$applyEffect$2$$anonfun$apply$3.apply(Command.scala:62)
at sbt.Command$.process(Command.scala:95)
at sbt.MainLoop$$anonfun$1$$anonfun$apply$1.apply(MainLoop.scala:100)
at sbt.MainLoop$$anonfun$1$$anonfun$apply$1.apply(MainLoop.scala:100)
at sbt.State$$anon$1.process(State.scala:179)
at sbt.MainLoop$$anonfun$1.apply(MainLoop.scala:100)
at sbt.MainLoop$$anonfun$1.apply(MainLoop.scala:100)
at sbt.ErrorHandling$.wideConvert(ErrorHandling.scala:18)
at sbt.MainLoop$.next(MainLoop.scala:100)
at sbt.MainLoop$.run(MainLoop.scala:93)
at sbt.MainLoop$$anonfun$runWithNewLog$1.apply(MainLoop.scala:71)
at sbt.MainLoop$$anonfun$runWithNewLog$1.apply(MainLoop.scala:66)
at sbt.Using.apply(Using.scala:25)
at sbt.MainLoop$.runWithNewLog(MainLoop.scala:66)
at sbt.MainLoop$.runAndClearLast(MainLoop.scala:49)
at sbt.MainLoop$.runLoggedLoop(MainLoop.scala:33)
at sbt.MainLoop$.runLogged(MainLoop.scala:25)
at sbt.StandardMain$.runManaged(Main.scala:57)
at sbt.xMain.run(Main.scala:29)
at xsbt.boot.Launch$$anonfun$run$1.apply(Launch.scala:109)
at xsbt.boot.Launch$.withContextLoader(Launch.scala:129)
at xsbt.boot.Launch$.run(Launch.scala:109)
at xsbt.boot.Launch$$anonfun$apply$1.apply(Launch.scala:36)
at xsbt.boot.Launch$.launch(Launch.scala:117)
at xsbt.boot.Launch$.apply(Launch.scala:19)
at xsbt.boot.Boot$.runImpl(Boot.scala:44)
at xsbt.boot.Boot$.main(Boot.scala:20)
at xsbt.boot.Boot.main(Boot.scala)
[error] java.lang.AbstractMethodError
[error] Use 'last' for the full log.
[debug] > load-failed
[debug] > last
'''
with plugins.sbt: ''' logLevel := Level.Warn resolvers += "Typesafe repository" at "http://repo.typesafe.com/typesafe/releases/" addSbtPlugin("com.typesafe.play" % "sbt-plugin" % "2.3.1") resolvers += "Sonatype OSS Snapshots" at "https://oss.sonatype.org/content/repositories/snapshots" addSbtPlugin("io.gatling" % "sbt-plugin" % "1.0") addSbtPlugin("com.github.play2war" % "play2-war-plugin" % "1.2-beta1") '''
with Build.scala: ''' import sbt. import sbt.Keys. import play.PlayImport.PlayKeys._
import java.io.{File ⇒ JFile}
import scala.annotation.tailrec import io.gatling.sbt.GatlingPlugin
import com.typesafe.sbt.SbtNativePackager.Universal import com.github.play2war._
object CoPlayAuthenticationBuild extends sbt.Build {
val appName = "co-play-authentication" val appVersion = "1.2.9"
val appDependencies = Seq( "com.typesafe" % "config" % "1.2.0", "com.typesafe.scala-logging" %% "scala-logging-slf4j" % "2.1.2",
)
lazy val dist = com.typesafe.sbt.SbtNativePackager.NativePackagerKeys.dist
val publishDist = TaskKeysbt.File
lazy val publishSettings = Seq( publishArtifact in Compile := false,
) ++ addArtifact(artifact in publishDist, publishDist)
lazy val commonSettings = Seq( version := appVersion, sourceGenerators in Compile <+= (fullClasspath in Runtime in codegenProject, runner, sourceManaged, streams, routesImport) map { (cp, r, out, s, ri) => runCodeGen("codegen.SourceCodeGenerators", cp, r, out, s)},
)
lazy val warProjectSettings = Play2WarPlugin.play2WarSettings ++ Seq( Play2WarKeys.filteredArtifacts := Seq() )
val codeGenerator = InputKeyUnit lazy val mainProject = Project(appName, file(".")).enablePlugins(play.PlayScala) .settings(commonSettings ++ warProjectSettings: ) .settings( ).settings(publishSettings: )
val gatlingDependencies = Seq( "org.mockito" % "mockito-core" % "1.9.5", "io.gatling.highcharts" % "gatling-charts-highcharts" % "2.0.1", "org.scalatest" %% "scalatest" % "2.1.7", "io.gatling" % "test-framework" % "1.0", play.PlayImport.ws )
lazy val gatlingProject = Project("gatling", file("gatling")).enablePlugins(GatlingPlugin).settings( version := appVersion, run := TaskKeyUnit, resolvers += "Sonatype OSS Snapshots" at "https://oss.sonatype.org/content/repositories/snapshots", scalacOptions ++= Seq("-unchecked", "-deprecation", "-feature", "-language:postfixOps", "-language:existentials"), libraryDependencies ++= gatlingDependencies )
val codegenDependencies = Seq( "org.osgi" % "org.osgi.core" % "6.0.0", "com.wordnik" % "swagger-codegen_2.10.2" % "2.0.18-SNAPSHOT", "org.json4s" %% "json4s-jackson" % "3.2.10", "io.backchat.inflector" %% "scala-inflector" % "1.3.5", "commons-io" % "commons-io" % "2.3", "ch.qos.logback" % "logback-classic" % "1.1.2", "org.rogach" %% "scallop" % "0.9.5", "junit" % "junit" % "4.11" % "test", "org.scalatest" %% "scalatest" % "2.1.7" % "test", "org.scalatra.scalate" %% "scalate-core" % "1.7.0", "org.scala-lang" % "scala-reflect" % "2.10.4" )
lazy val codegenProject = Project("codegen", file("codegen")).settings( scalaVersion := "2.10.4", mainClass in (Compile, run) := Some("codegen.MainCodeGenerators"), resolvers += "Sonatype OSS Snapshots" at "https://oss.sonatype.org/content/repositories/snapshots", libraryDependencies ++= codegenDependencies )
def runCodeGen(mainFile: String, cp: Types.Id[Keys.Classpath], r: Types.Id[ScalaRun], out:Types.Id[JFile], s: Types.Id[Keys.TaskStreams]) = { val cachedFun = FileFunction.cached(out/"cached"/mainFile, FilesInfo.lastModified, FilesInfo.exists) {(in: Set[JFile]) => val tempDir = IO.createTemporaryDirectory val tempFile =tempDir/"generated.txt" tempFile.createNewFile()
}
} '''