Playbay Play 2.0 plugin イロハのイ
Upcoming SlideShare
Loading in...5
×
 

Like this? Share it with your network

Share

Playbay Play 2.0 plugin イロハのイ

on

  • 2,947 views

 

Statistics

Views

Total Views
2,947
Views on SlideShare
2,946
Embed Views
1

Actions

Likes
8
Downloads
9
Comments
0

1 Embed 1

http://us-w1.rockmelt.com 1

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Playbay Play 2.0 plugin イロハのイ Presentation Transcript

  • 1. PlayFramework 2.0 プラグイン イロハのイ 原 一浩 @kara_d
  • 2. 原 一浩 @kara_d http://greative.jp/
  • 3. 本日のセッション内容➡ Playプラグインを入れてみよう➡ Playプラグインとはなにか➡ Typesafe社製プラグインでまなぶ オリジナルプラグイン作成のための構成 3
  • 4. Playプラグインを入れてみよう 4
  • 5. 入れてみるプラグイン➡ Groovy Template Engine for Play 2➡ play2-project-info 5
  • 6. アプリケーション用プラグイン➡ Groovy Template Engine for Play 2 • https://github.com/mbknor/gt-engine-play2 デモ 6
  • 7. Build.scalaに書く val  appDependencies  =  Seq(    //  Add  your  project  dependencies  here,    "kjetland"  %%  "gt-­‐engine-­‐play2"  %  "0.1.6" ) val  main  =  PlayProject(appName,  appVersion,   appDependencies,  mainLang  =  JAVA).settings(    //  Add  your  own  project  settings  here            resolvers  +=  "mbknor  github  Repository"  at  "http:// mbknor.github.com/m2repo/releases/"     ) 7
  • 8. Runした後に依存管理が行われる [info]  Updating  {file:/Users/hoge/study_play20/ testSample5/}testSample5... [info]  Resolving   org.hibernate.javax.persistence#hibernate-­‐jpa-­‐2.0-­‐api; 1.0.1.Fin                                                                                               [info]  downloading  http://mbknor.github.com/m2repo/ releases/kjetland/gt-­‐engine-­‐play2_2.9.1/0.1.6/gt-­‐ engine-­‐play2_2.9.1-­‐0.1.6.jar  ... [info]     [SUCCESSFUL  ]  kjetland#gt-­‐engine-­‐ play2_2.9.1;0.1.6!gt-­‐engine-­‐play2_2.9.1.jar  (2004ms) [info]  downloading  http://mbknor.github.com/m2repo/ releases/kjetland/gt-­‐engine_2.9.1/0.1.7.12/gt-­‐ engine_2.9.1-­‐0.1.7.12.jar  ... [info]     [SUCCESSFUL  ]  kjetland#gt-­‐ engine_2.9.1;0.1.7.12!gt-­‐engine_2.9.1.jar  (1179ms) [info]  downloading  http://repo.typesafe.com/typesafe/ releases/org/codehaus/groovy/groovy/1.8.6/ groovy-­‐1.8.6.jar  ... 8
  • 9. コンソール用プラグイン➡ Project Information module for Play2! • https://github.com/karad/play2-project-info デモ 9
  • 10. Plugins.sbtに書く resolvers  +=  "Greative  Maven  Repository"  at  "https:// github.com/karad/maven-­‐repo/raw/master/release/" addSbtPlugin("jp.greative"  %  "play2-­‐project-­‐info-­‐sbt"   %  "0.1") 10
  • 11. Playプラグインとはなにか 11
  • 12. Playプラグインは、➡ Play上の機能追加、依存管理する仕組み • アプリケーションの機能拡張 • ライブラリの追加 • 対話型コンソールの機能拡張➡ Playのプラグイン自体は、コンパイル済みのjar • これをsbtを使って依存管理する • ただし、Playコンソール系は別 12
  • 13. Playコンソールについて➡ Playコンソールはsbtコンソールの拡張➡ sbt • sbt is a build tool for Scala and Java projects that aims to do the basics well. It requires Java 1.6 or later.➡ .sbtと.scala • .sbt build definition uses a Scala-based "domain-specific language" (DSL)➡ 始める sbt • http://scalajp.github.com/sbt-getting-started-guide-ja/ 13
  • 14. Playとsbtの関係➡ Play 2.0以降、sbtが全面採用 • Playコマンド用 • ライブラリ、プラグインの依存管理用 • ビルド用 14
  • 15. Playにおけるプラグインの種類➡ アプリケーション • Model • Controller • View - Tag➡ クラスライブラリ • jar➡ コンソール • sbtのコンソール - sbtプラグインとして作成 15
  • 16. Playプラグインは何で書くの?➡ クラスライブラリとしてのプラグイン • Java/Scala両方➡ アプリケーションのプラグイン • プロジェクトによる➡ コンソール型のプラグイン • Scala 16
  • 17. Typesafe社製プラグインでまなぶオリジナルプラグイン作成のための構成 17
  • 18. 参考になるもの➡ play-plugins • https://github.com/typesafehub/play-plugins - dustプラグインとか参考になる➡ play本体 • project - Build.scala • framework - src console sbt-plugin 18
  • 19. フォルダ構成➡ conf/ • application.conf➡ project/ • build.properties • Build.scala • plugins.sbt➡ sbt-plugin/ • src/ - main/ scala/➡ README.md 19
  • 20. 使うファイル➡ プラグイン本体のソース • HogeKeys.scala • HogePlugin.scala • HogeTasks.scala➡ ビルド用ファイル • Build.scala デモ 20
  • 21. リポジトリってどうなってるの?➡ Gitをmavenリポジトリとしているプラグインが多い • ライブラリのリポジトリと、mavenリポジトリで分ける • メリット - URLが出来る - マニュアル置ける - アップロード楽 - 無料 デモ 21
  • 22. ありがとうございました7/14 第3回playframework勉強会http://playframeworkja.doorkeeper.jp/events/1231-%E7%AC%AC3%E5%9B%9Eplayframework%E5%8B%89%E5%BC%B7%E4%BC%9A-play_ja日本Play frameworkユーザー会https://groups.google.com/group/play_ja?hl=ja 22