2016-07-10 3 views
2

프레임 워크를 처음 사용했습니다.Play Framework, Java 및 Eclipse Luna

최신 버전의 2.5를 다운로드했으며 Java에서 샘플 응용 프로그램을 개발하려고합니다. Java 버전은 8

Eclipse IDE를 사용하고 싶습니다. 그 때문에 plugins.sbt에서 필요한 설정을했습니다.

"색인을 확인할 수 없습니다."와 같은 오류가 나타납니다.

사소한 변경을하거나 다른 클래스를 추가하면 몇 가지 다른 오류가 발생합니다.

  1. newApp
  2. 새로운 활성
  3. 추가 "addSbtPlugin ("com.typesafe.sbteclipse "%"sbteclipse - 플러그인 "%"4.0.0 ")"에서 플러그인 :

    나는 아래의 단계를 수행하고

  4. .sbt 내가 오류 코드 아래에 "지수가 해결 될 수 없다"는 무엇입니까 그 후 이클립스에서 프로젝트를

  • 가져 오기 프로젝트를 컴파일 : 나는 또한 프로젝트를 다시 컴파일하고 이클립스에서 & 오픈 프로젝트를 닫으려고 시도했다. 그러나 문제는 동일합니다.

    package controllers; 
    
    import play.mvc.*; 
    
    import views.html.*; 
    
    /** 
    * This controller contains an action to handle HTTP requests 
    * to the application's home page. 
    */ 
    public class HomeController extends Controller { 
    
        public Result index() { 
         return ok(index.render("Your new application is ready.")); 
        } 
    
    } 
    

    재생 프레임 워크와 Eclipse를 어떻게 구성 할 수 있는지 제안 해주십시오.

  • +0

    망가 루나, 네온 이동합니다. – GhostCat

    +0

    색인 *으로 해결해야 할 항목은 무엇입니까? 'index'라는 메소드 내부에서, 그것은 최선으로 해결 될 것입니다. – nitind

    +0

    내 대답이 업데이트되었습니다. sbteclipse 버전 5.1.0으로 업그레이드하면 모든 것이 올바르게 작동합니다. 감사합니다 mkurz. – mkurz

    답변

    1

    업데이트 :sbteclipse 버전 5.1.0으로 업그레이드하면 모든 것이 정상적으로 작동합니다.


    how to setup sbteclipse에 관한 문서를 읽었습니까?

    당신이에 줄을 다음과 같은 추가 된 확인하여 build.sbt :

    (위의 설정을 추가 한 후) 이클립스 프로젝트를 다시 생성
    // Compile the project before generating Eclipse files, so that generated .scala or .class files for views and routes are present 
    EclipseKeys.preTasks := Seq(compile in Compile, compile in Test) 
    
    // The next two lines have to be REMOVED in case you switch to Scala IDE 
    EclipseKeys.projectFlavor := EclipseProjectFlavor.Java // Java project. Don't expect Scala IDE 
    EclipseKeys.createSrc := EclipseCreateSrc.ValueSet(EclipseCreateSrc.ManagedClasses, EclipseCreateSrc.ManagedResources) // Use .class files instead of generated .scala files for views and routes 
    

    이 지금 단계를 따르

    1. 일식의 권리 프로젝트를 클릭 한 다음 "프로젝트 닫기"를 선택하여 프로젝트를 닫습니다.
    2. 이제 프로젝트에있는 target/scala-2.11/classes_managed/ 폴더가 존재하는지 확인하십시오. 그렇지 않은 경우 : 생성하십시오. (sbteclipse 5.1.0에서 수정 된)
    3. 실행 sbt eclipse 또는
    4. activator eclipse은 이제 이클립스에서 프로젝트를 다시 열 수 있습니다 (또는 다시 가져 오기를 원하는 경우)
    5. 당신은 여전히 ​​오류를 볼 수 있습니다. 계속해서 sbt run/activator run을 통해 프로젝트를 실행하십시오. 앱에 액세스 한 후에는 오류가 사라져야합니다 (어쩌면 마우스 오른쪽 버튼을 클릭하고 "새로 고침"을 누르거나 "F5"키를 사용하여 이클립스에서 프로젝트를 새로 고침해야합니다). 왜? 이제 경로와보기 (예 : index.scala.html)가 컴파일되어 eclipse에서 클래스 파일을 참조 할 수있게되었습니다.

    의 핵심은 시간에 당신이 이클립스 클래스 경로합니다 (.classpath 파일)에 포함 할 수 있도록 sbt eclipse/activator eclipsetarget/scala-2.11/classes_managed/ 폴더가 실행하는 것입니다. 개인적으로 나는 .gitkeep 파일을이 폴더에 넣고 git repo에 커밋하여 폴더가 삭제되었는지 항상 확인합니다. (그러나이 .gitkeep 파일! 절대 target 폴더를 커밋해서는 안되며 그 중 하나는 git repo에 저장해야합니다! 이것은 개인적인 해결 방법입니다.). (sbteclipse 5.1.0에서 수정 된)

    팁 : 당신은 또한 쉽게 개발하기 위해 더 이클립스 설정을 추가 할 수 있습니다

    EclipseKeys.withSource := true // downloads the source of all dependencies 
    EclipseKeys.withJavadoc := true // downloads javadoc of dependencies 
    
    +0

    문제가 해결되었습니다. 수동으로 생성 된 폴더 "classes_managed". – user2678475

    +0

    답을 업데이트했습니다. sbteclipse 버전 5.1.0으로 업그레이드하면 더 이상 수동으로 폴더를 만들 필요가 없습니다. – mkurz