Play-2.1に移行した後、routesコンパイラがroutesファイルに対して機能しなくなるという問題に悩まされました。Play-2.0.4では完全に問題ありませんでしたが、ビルドエラーが発生し、回避策が見つかりません。
私のプロジェクトではケーキパターンを使用しているので、コントローラーのアクションは<package>.<controller class>.<action>
、ではなく、を介して表示され<package>.<component registry>.<controller instance>.<action>
ます。新しいPlayルートコンパイラは、最後の2つを除くすべてのアクションパスコンポーネントを使用して、マネージドソースで使用されるパッケージ名を形成します( https://github.com/playframework/Play20/blob/2.1でコードを取得できる限り).0 / フレームワーク/src/routes-compiler/src/main/scala/play/router/RoutesCompiler.scala)。私の場合、パッケージ名としてが選択された場合に状況<package>.<component registry>
が発生し、ビルド中にエラーが発生します。
[error] server/target/scala-2.10/src_managed/main/com/grumpycats/mmmtg/componentsRegistry/routes.java:5: componentsRegistry is already defined as object componentsRegistry
[error] package com.grumpycats.mmmtg.componentsRegistry;
この問題を実証するためにサンプルプロジェクトを作成しました:https ://github.com/rmihael/play-2.1-routes-problem
コントローラのケーキパターンを落とさずに、この問題をなんとかして回避することは可能ですか?この問題のためにPlay2.1を続行できないのは残念です。