プレイするのは初めてです! Framework 2.1(Javaバージョン)。scalaの経験はありません。私は何が何であるか理解していない%
および%%
はBuild.scalaを意味します。私はそれらについてグーグルで調べましたが、それらの意味が見つかりませんでした。
私のBuild.scalaファイルには次のものがあります。
"org.hibernate" % "hibernate-entitymanager" % "4.1.0.Final",
"com.typesafe" %% "play-plugins-mailer" % "2.1"
最初の行が単一の%記号を使用し、2番目の行が2つのパーセント記号を使用する理由%%
?それらは何のため?
公式文書から:
http://www.playframework.com/documentation/2.1.1/SBTDependencies
_
%%
で正しいScalaバージョンを取得する
groupID %% artifactID % revision
の代わりにgroupID % artifactID % revision
を使用する場合(groupID
の後にダブル%%
があります)、SBTはプロジェクトのScalaバージョンを追加しますアーティファクト名。これは単なるショートカットです。
%%
なしでこれを書くことができます:val appDependencies = Seq( "org.scala-tools" % "scala-stm_2.9.1" % "0.3" )
ビルドの
scalaVersion
が2.9.1
であると仮定すると、以下は同一です:val appDependencies = Seq( "org.scala-tools" %% "scala-stm" % "0.3" )
上記でわかるように、%%
を使用する場合、バージョンを指定する必要はありません。
これは、Playがビルドツールとして使用するSBTの一部です。具体的には、これはインポート文です。
パーセント記号%
は、実際には依存関係を構築するために使用されるメソッドです。二重パーセント記号%%
は、現在のScalaバージョン-これにより、実行中のscalaのバージョンに対応する正しいライブラリを取得できます。これにより、変更する必要がなくなります。 Scalaを更新するときのビルドファイル。
詳細 こちら