質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
Scala

ScalaはJava仮想マシンで動作を行うオブジェクト指向型プログラミング言語の1つです。静的型付けの関数型言語で、コンパイルエラーの検出に強みがあります。

Q&A

解決済

1回答

2160閲覧

scalikejdbc-genでエラーが発生し、generate出来ない

pop_04

総合スコア12

Scala

ScalaはJava仮想マシンで動作を行うオブジェクト指向型プログラミング言語の1つです。静的型付けの関数型言語で、コンパイルエラーの検出に強みがあります。

0グッド

0クリップ

投稿2017/05/16 13:38

毎回、お世話になっております。今回はscalikejdbcについての質問です。

###前提・実現したいこと
scalikejdbcのmapper-generatorでソースコードを自動生成したいのですが、エラーが発生してしまい、生成されません。
もし記述もれや、エラーの原因を知っている方がいましたら教えていただきたいです。

###発生している問題・エラーメッセージ

java.lang.IllegalArgumentException: For input string: "" at scala.collection.immutable.StringLike$class.parseBoolean(StringLike.scala:238) at scala.collection.immutable.StringLike$class.toBoolean(StringLike.scala:226) at scala.collection.immutable.StringOps.toBoolean(StringOps.scala:31) at scalikejdbc.mapper.SbtPlugin$$anonfun$scalikejdbc$mapper$SbtPlugin$$loadGeneratorSettings$11.apply(SbtPlugin.scala:100) at scalikejdbc.mapper.SbtPlugin$$anonfun$scalikejdbc$mapper$SbtPlugin$$loadGeneratorSettings$11.apply(SbtPlugin.scala:100) at scala.Option.map(Option.scala:145) at scalikejdbc.mapper.SbtPlugin$.scalikejdbc$mapper$SbtPlugin$$loadGeneratorSettings(SbtPlugin.scala:100) at scalikejdbc.mapper.SbtPlugin$$anonfun$10$$anonfun$apply$25.apply(SbtPlugin.scala:241) at scalikejdbc.mapper.SbtPlugin$$anonfun$10$$anonfun$apply$25.apply(SbtPlugin.scala:241) at scala.util.Either.fold(Either.scala:98) at scalikejdbc.mapper.SbtPlugin$$anonfun$10.apply(SbtPlugin.scala:241) at scalikejdbc.mapper.SbtPlugin$$anonfun$10.apply(SbtPlugin.scala:241) at sbt.std.Transform$$anon$3$$anonfun$apply$2.apply(System.scala:44) at sbt.std.Transform$$anon$3$$anonfun$apply$2.apply(System.scala:44) at sbt.std.Transform$$anon$4.work(System.scala:63) at sbt.Execute$$anonfun$submit$1$$anonfun$apply$1.apply(Execute.scala:228) at sbt.Execute$$anonfun$submit$1$$anonfun$apply$1.apply(Execute.scala:228) at sbt.ErrorHandling$.wideConvert(ErrorHandling.scala:17) at sbt.Execute.work(Execute.scala:237) at sbt.Execute$$anonfun$submit$1.apply(Execute.scala:228) at sbt.Execute$$anonfun$submit$1.apply(Execute.scala:228) at sbt.ConcurrentRestrictions$$anon$4$$anonfun$1.apply(ConcurrentRestrictions.scala:159) at sbt.CompletionService$$anon$2.call(CompletionService.scala:28) at java.util.concurrent.FutureTask.run(Unknown Source) at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source) at java.util.concurrent.FutureTask.run(Unknown Source) at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) at java.lang.Thread.run(Unknown Source) [error] (compile:scalikejdbcGeneratorSettings) java.lang.IllegalArgumentException: For input string: ""

###該当のソースコード
build.sbt

name := """play-scala-seed-sample""" version := "1.0-SNAPSHOT" lazy val root = (project in file(".")).enablePlugins(PlayScala) scalaVersion := "2.11.11" libraryDependencies ++= Seq( jdbc, cache, ws, specs2 % Test, "org.scalatestplus.play" %% "scalatestplus-play" % "1.5.1" % Test, //"com.h2database" % "h2" % "1.4.195", //"org.hsqldb" % "hsqldb" % "2.3.2" "mysql" % "mysql-connector-java" % "5.1.40", "org.scalikejdbc" %% "scalikejdbc" % "2.5.2", "org.scalikejdbc" %% "scalikejdbc-test" % "2.5.2" % "test", "org.scalatestplus.play" %% "scalatestplus-play" % "1.5.1" % "test", "org.scalikejdbc" %% "scalikejdbc-config" % "2.5.2", "org.scalikejdbc" %% "scalikejdbc-play-initializer" % "2.5.1", "org.flywaydb" %% "flyway-play" % "3.1.0" ) scalikejdbcSettings

project/scalikejdbc.properties (データベース名、ユーザー名、パスワードは、適切な値を入れています)

# JDBC 接続設定 #mysql jdbc.driver=com.mysql.jdbc.Driver jdbc.url=jdbc:mysql://localhost/データベース名?characterEncoding=UTF8&autoReconnect=true&useSSL=false jdbc.username=ユーザー名 jdbc.password=パスワード jdbc.schema= # 生成するクラスを配置するパッケージ generator.packageName=models # ソースコードの改行コード: LF/CRLF generator.lineBreak=CRLF # テンプレート: basic/namedParameters/executable/interpolation/queryDsl generator.template=queryDsl # テストのテンプレート: specs2unit/specs2acceptance/ScalaTestFlatSpec generator.testTemplate=specs2unit # 生成するファイルの文字コード generator.encoding=UTF-8 # scalikejdbc-syntax-support-macroを使用するか?: true/false generator.autoConstruct # sessionのimplicitパラメータに、デフォルトパラメータを付与するか?: true/false generator.defaultAutoSession # Datetimeを表現する際に使うclassの指定: org.joda.time.DateTime/java.time.ZonedDateTime/java.time.OffsetDateTime generator.dateTimeClass

project/plugins.sbt

// The Play plugin addSbtPlugin("com.typesafe.play" % "sbt-plugin" % "2.5.10") // web plugins addSbtPlugin("com.typesafe.sbt" % "sbt-coffeescript" % "1.0.0") addSbtPlugin("com.typesafe.sbt" % "sbt-less" % "1.1.0") addSbtPlugin("com.typesafe.sbt" % "sbt-jshint" % "1.0.4") addSbtPlugin("com.typesafe.sbt" % "sbt-rjs" % "1.0.8") addSbtPlugin("com.typesafe.sbt" % "sbt-digest" % "1.1.1") addSbtPlugin("com.typesafe.sbt" % "sbt-mocha" % "1.1.0") addSbtPlugin("org.irundaia.sbt" % "sbt-sassify" % "1.4.6") libraryDependencies += "mysql" % "mysql-connector-java" % "5.1.40" addSbtPlugin("org.scalikejdbc" %% "scalikejdbc-mapper-generator" % "2.5.2")

application.conf

//db設定の所までは省略 scalikejdbc.global.loggingSQLAndTime.enabled=true scalikejdbc.global.loggingSQLAndTime.singleLineMode=false scalikejdbc.global.loggingSQLAndTime.logLevel=debug scalikejdbc.global.loggingSQLAndTime.warningEnabled=true scalikejdbc.global.loggingSQLAndTime.warningThresholdMillis=5 scalikejdbc.global.loggingSQLAndTime.warningLogLevel=warn play.modules.enabled += "scalikejdbc.PlayModule" # scalikejdbc.PlayModule doesn't depend on Play's DBModule play.modules.disabled += "play.api.db.DBModule" play.modules.enabled += "org.flywaydb.play.PlayModule"

###試したこと

下記コマンドをターミナルで入力し、実行しましたが、エラーが発生しました。
sbt "scalikejdbc-gen board"

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

自己解決

project/scalikejdbc.properties
のパラメータ不足でした。=の先の記述もれでした。(なんで書いてなかったんだろう・・・)お騒がせしました。
下記の部分を修正。

# scalikejdbc-syntax-support-macroを使用するか?: true/false generator.autoConstruct=false # sessionのimplicitパラメータに、デフォルトパラメータを付与するか?: true/false generator.defaultAutoSession=false # Datetimeを表現する際に使うclassの指定: org.joda.time.DateTime/java.time.ZonedDateTime/java.time.OffsetDateTime generator.dateTimeClass=org.joda.time.DateTime

投稿2017/05/30 01:04

pop_04

総合スコア12

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問