1

以下を使用して、コマンドラインでカスタム構成ファイルを指定して、サーバー上でアプリケーションを正常に実行しました。

-Dconfig.file=app.conf

しかし、カスタム構成ファイルをローカルマシンにコピーしてそこで使用しようとすると、に渡し-Dconfig.filerun奇妙なエラーが表示され始めました。私は最終的にこれを追跡して、グローバルオブジェクトのonStartメソッドがまったく実行されていないことを突き止めました。なぜこうなった?

4

1 に答える 1

1

何らかの理由で、タイプセーフな設定ライブラリが、カスタム設定ファイルでこの行をロードするのに黙って失敗していました

include "application"

sbt runただし、サーバー上でアプリケーションをスタンドアロンで実行している場合にのみ機能しました。

したがって、そのapplication.global=global.Global行はそのファイルで読み取られていなかったため、Play はオブジェクトを見つけることができず、何もしないGlobal空のGlobalオブジェクトに静かに戻りました。

行を変更しincludeて絶対ファイルパスを指定するとapplication.conf、問題が修正されました。

于 2013-05-14T14:28:31.353 に答える