2012-07-06 13 views
6

私は.csvファイルを持っています。このファイルは、アプリケーションの起動時に読み込む必要があります。Play Frameworkカスタムリソース:ターゲットへのコピー方法

どのようにしてこのファイルをターゲットにコピー(「実行」または「開始」)することができますか?

Global.class.getResourceAsStream("/file.csv")でグローバルクラスのこのファイルにアクセスしようとしていますが、結果は常にnullです。


OK - ありがとう。 私はフォルダと/ressources/file.csvパス

答えて

3

でそれをロードするあなたは、いくつかの場所でそれを置くことができるのconf/ressourcesの私のファイルとそれを管理している:

  • いずれかappフォルダ
  • confフォルダ内のいずれか:私はconf/ressourcesフォルダ
+0

何も役に立ちません - 私は両方のアプリを試しました:conf/ressources conf/ressourcesの場合は – vadimiron

+0

- パスは同じですか? getResourceAsStream( "/ file.csv")? – vadimiron

+0

OK - ありがとう。 私はconf/ressourcesフォルダにある自分のファイルでそれを管理しており、/ressources/file.csvのパスでそれをロードしています – vadimiron

3

を作成することによって、あなたはあなたのconfフォルダにresourcesフォルダを作成することができ、この1のために行くだろう、そこにファイルを置いて、そのアプリケーションがパスを解決することができなくなりますので、その後、あなたは/でパスを開始するべきではありません

Play.classloader.getResourceAsStream("resources/file.csv"); 

注意を呼び出すことによってInputStreamを作成し、起動時にjava.lang.ExceptionInInitializerError: nullを投げます。

0

再生プロジェクトのテストフォルダのtest/resources/file.csvフォルダに置くことができます。その後、

getClass.getResourceAsStream("/file.csv") 

で、スカラーでアクセスできます。this blog postをチェックしてください。

関連する問題