新しいことをやってみるシリーズ:Play Framework2.3.1でsbtエラーが出た時にすること

Play Frameworkで

activator start

した際にActivator + Windows で以下のエラーが出るケースがあります。

java.util.regex.PatternSyntaxException: Unmatched closing ')' near index 47
['"]?([^\s'"]*)['"]?\s*:\s*[\[]?.*['"].*/lib\(.*)['"]
                                               ^
        at java.util.regex.Pattern.error(Pattern.java:1924)
        at java.util.regex.Pattern.compile(Pattern.java:1669)
        at java.util.regex.Pattern.<init>(Pattern.java:1337)
        at java.util.regex.Pattern.compile(Pattern.java:1022)
        at scala.util.matching.Regex.<init>(Regex.scala:153)
        at scala.collection.immutable.StringLike$class.r(StringLike.scala:224)
        at scala.collection.immutable.StringOps.r(StringOps.scala:31)
        at scala.collection.immutable.StringLike$class.r(StringLike.scala:213)
        at scala.collection.immutable.StringOps.r(StringOps.scala:31)
        at com.typesafe.sbt.rjs.SbtRjs$$anonfun$getWebJarPaths$1$$anonfun$apply$5.apply(SbtRjs.scala:136)
        at com.typesafe.sbt.rjs.SbtRjs$$anonfun$getWebJarPaths$1$$anonfun$apply$5.apply(SbtRjs.scala:132)
        at scala.Option.fold(Option.scala:157)
        at com.typesafe.sbt.rjs.SbtRjs$$anonfun$getWebJarPaths$1.apply(SbtRjs.scala:132)
        at com.typesafe.sbt.rjs.SbtRjs$$anonfun$getWebJarPaths$1.apply(SbtRjs.scala:124)
        at scala.Function1$$anonfun$compose$1.apply(Function1.scala:47)
        at sbt.$tilde$greater$$anonfun$$u2219$1.apply(TypeFunctions.scala:42)
        at sbt.std.Transform$$anon$4.work(System.scala:64)
        at sbt.Execute$$anonfun$submit$1$$anonfun$apply$1.apply(Execute.scala:237)
        at sbt.Execute$$anonfun$submit$1$$anonfun$apply$1.apply(Execute.scala:237)
        at sbt.ErrorHandling$.wideConvert(ErrorHandling.scala:18)
        at sbt.Execute.work(Execute.scala:244)
        at sbt.Execute$$anonfun$submit$1.apply(Execute.scala:237)
        at sbt.Execute$$anonfun$submit$1.apply(Execute.scala:237)
        at sbt.ConcurrentRestrictions$$anon$4$$anonfun$1.apply(ConcurrentRestrictions.scala:160)
        at sbt.CompletionService$$anon$2.call(CompletionService.scala:30)
        at java.util.concurrent.FutureTask.run(FutureTask.java:262)
        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
        at java.util.concurrent.FutureTask.run(FutureTask.java:262)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
        at java.lang.Thread.run(Thread.java:744)
[error] (*:rjsPaths) java.util.regex.PatternSyntaxException: Unmatched closing ')' near index 47

このエラーが出た場合、

sbt-rjsの1.0.4で直っているのでアップデートを行います。

 

plugins.sbt

addSbtPlugin("com.typesafe.sbt" % "sbt-rjs" % "1.0.4")

 

https://github.com/mariussoutier/play-angular-require-seed/issues/20

http://grokbase.com/t/gg/play-framework/146apwcx73/2-3-0-java-rjs-xception-while-running-activator-dist-patternsyntaxexception