2016-02-21 3 views
0

Я использую playframework 2.4.6 и пытаюсь загрузить файл в свой ведро S3, но я получаю сообщение об ошибке при компиляции: Not Found value s3. Я в основном пытаюсь скопировать этот учебник https://github.com/Kaliber/play-s3, а также этот пост, похожий Play! Upload file and save to AWS S3. Моя информация выглядит следующим образом:Scala amazon S3 скачать файл показать ошибку не найден

Build.SBT

val appDependencies = Seq(
    "net.kaliber" %% "play-s3" % "7.0.1", 
    "net.kaliber" %% "play-s3" % "7.0.2" 

) 

Application.conf

aws.accessKeyId="akey" 
aws.secretKey="skey" 

тогда мой контроллер

def upload= Action.async(parse.multipartFormData) {implicit request => 
    request.body.file("file").map { file => 
    // implicit val credential = AwsCredentials.fromConfiguration 
     val byteArray = Files.readAllBytes(Paths.get(file.ref.file.getPath)) 

     val bucket = S3("myBuckets") 
    val result = bucket + BucketFile(file.filename, file.contentType.get, byteArray, None, None) 
     result.map { unit => 
     Ok("File uploaded") 
     }.getOrElse { 
     Redirect(routes.Application.index).flashing(
      "error" -> "Missing file" 
     ) 
     } 
    } 
    } 

Я получаю ошибку на val bucket = S3 ("myBuckets") как указано перед ним говорит Не найденное значение S3 и сбои сборки. Я не знаю, смогу ли я пропускать импорт, как мой IDE не указывает это ... Это мой импорт для контроллера:

import play.api.data.Form 
import play.api.libs.json.{Json, JsValue} 
import play.api.mvc.{Action, Controller} 
import play.mvc.Result 
import scala.concurrent.ExecutionContext.Implicits.global 
import scala.concurrent.Future 
import java.io.File 

ответ

0

Попробуйте импортировать:

fly.play.s3._ 

или если вы хочу быть конкретным:

fly.play.s3.S3