クリトラのコツコツITログ

3Dの皮をかぶった庶民の技術ブログです

slick-codegenをsbt taskに登録して実行する

本日の配信


Scala-Play ハンズオン作成part4 ~ slick-codegenを設定するよの巻 ~

今日はslick-codegenの設定をしていました。
案の定ハマりにハマって全然進まなかった...
slickではなくsbt, vim-metalsでハマってたのがなんともね...
slick側でも、公式サイトにある「サンプルはこちら」的なリンク先を試したら、全然動かなくて苦しんだりしましたけどね

BGMはフリーの環境音を設定したので、なんかもう普通の自習室みたいな配信となりました
私も途中はずっと喋ってなかった気がします、たぶん

本日の進捗と残タスク

進捗

  • slick-codegenは動作するようになった
  • sbt taskとしてコマンドの登録ができた
  • vimのcocがproject_rootを誤認識する問題を解決

Commit内容
github.com

コードに直すとすごく少ないですね
3時間もかかったのになぁ

残タスク

  • 一旦のtweet一覧作成
  • created_at, updated_atへの対応

まだモデル関連の修正が残っています
一覧作成とモデル用の修正のどちらを優先するか少し悩んでいます
ハンズオンで考えると、一覧作成はみんなでやりたいので、モデル側を先に対応かなぁ

本日の反省

よかった点

  • フリーの環境音が結構集中できる

これはなかなかよかったです
気付かぬ間に集中できていました

悪かった点

  • 実装そのものより環境構築に時間がかかってしまっている
  • トライセプスくんの見た目に私の声があってない
  • sbtを全く理解していない

今回は反省の方が重たいですね
sbtがとにかくわからない
今回ハマっていたのが、playframeworkのプロジェクトルート直下に独自追加したフォルダ以下のscalaプログラムが読み取れていなかったというところ
ビルドパス的なものってどこで指定しているのかよくわかってなかったので、正常にコンパイルされてsbt側に認識されているものと思っていが、されていなかった

他にもsbtのtaskについても、どういう理屈でコマンドとして登録されているのか (runMain in Compile)がどういう意味なのか全然わかっていないです

例えば以下のコード

(runMain in Compile).toTask(" com.example.SlickCodeGen").value

toTaskで何をしており、何故半角スペースが必要なのか。.valueで何が取れているのかなどなど、全然わからないです
一回勉強しないとダメですね

vimについてはもう完全にscalaと関係ないので別記事にします...

声についてもボイチェン噛ますとノイズが増えるので、一旦スルーですね

まとめ

勉強を継続する手段としては、非常に成功しているように思います
VTuberとしては、面白いという種類のコンテンツにしてないので、これはいったいなんなのだ感が強いですが、まぁいいんじゃない! という気持ちです

いや、しかし全然ハンズオンまで進めないです
私のイメージではこの残タスクのうち、一覧作成を省いたものが終わってからcloneして実際にプログラムを書いてみるイメージなので...

そろそろどこまで用意して、どこからハンズオンにして、最初にどの程度のコードにして最終的にどこまで直すのかを真面目に考えた方がいいかもしれない

f:id:christina_triceps:20200216013131p:plain