2011-10-21 7 views
10

Oyun-1.2.3 kullanıyorum. Oynatımı nasıl dağıtabilirim? çerçeve uygulaması bağımsız (savaş yok) ve uygulama klasöründeki kaynağı içermiyor mu?

  • oyun çalıştırmak myApp -Dprecompiled = true
  • Uygulamam gelen myApp
  • kaldır uygulaması dizinde ön derleme dosyasına koyarak
  • oyunda üretime

    • seti: Aşağıdaki adımları gerçekleştirdikten

    Uygulamamın ilk isteği bir TemplateNotFoundException ile sonuçlanır. Adımlar doğru mu?

    Şirket kısıtlamaları nedeniyle kaynağı dağıtamıyorum. Yukarıdaki işe yaramazsa, Jetty'yi kullanarak dağıtmaya bakabilirim.

    Güncelleme
    StackTrace geçerli:

    12:27:53,932 INFO ~ Starting C:\play-1.2.3\samples-and-tests\chat 
    12:27:54,008 INFO ~ Application is precompiled 
    12:27:54,553 INFO ~ Application 'chat' is now started ! 
    12:27:54,647 INFO ~ Listening for HTTP on port 9000 ... 
    12:28:02,466 ERROR ~ 
    
    @686d104bp 
    Internal Server Error (500) for request GET/
    
    Execution exception 
    NullPointerException occured : null 
    
    play.exceptions.JavaExecutionException 
        at play.mvc.ActionInvoker.invoke(ActionInvoker.java:229) 
        at Invocation.HTTP Request(Play!) 
    Caused by: java.lang.NullPointerException 
        at play.exceptions.TemplateNotFoundException.<init>(TemplateNotFoundException.java:25) 
        at play.mvc.Controller.renderTemplate(Controller.java:666) 
        at play.mvc.Controller.renderTemplate(Controller.java:639) 
        at play.mvc.Controller.render(Controller.java:694) 
        at controllers.Application.index(Application.java:14) 
        at play.mvc.ActionInvoker.invokeWithContinuation(ActionInvoker.java:546) 
    
        at play.mvc.ActionInvoker.invoke(ActionInvoker.java:500) 
        at play.mvc.ActionInvoker.invokeControllerMethod(ActionInvoker.java:476) 
    
        at play.mvc.ActionInvoker.invokeControllerMethod(ActionInvoker.java:471) 
    
        at play.mvc.ActionInvoker.invoke(ActionInvoker.java:159) 
        ... 1 more 
    
  • +0

    Şablonlar önceden derlenmiş direktörlüğün bir parçası olarak da mevcuttur. Bu çalışmalı. Stacktrace'i yapıştırır mısın? – basav

    +0

    Tmp/bytecode dizininizde herhangi bir html dosyası görebiliyor musunuz? Uygulamayı başlattıktan sonra uygulama dizinini silmeyi denediniz mi? – emt14

    +0

    tmp/bytecode/PROD'de bir miktar HTML görüyorum. Uygulamayı çalıştırıp uygulama dizini silmek çalışmaz. –

    cevap

    4

    Bu dava # 806 https://play.lighthouseapp.com/projects/57987-play-framework/tickets/806 olarak fener üzerinde bildirilmiştir. Bazı araştırmalar yaptım ve 1.2.3'te şablon kaynağı bulunmadan önceden derlenmiş modda çalışmanın mümkün olmadığını buldum. 806 numaralı davadaki sorun hakkında daha kapsamlı yorumlar yaptım.

    Ayrıca bir düzeltme uygulayıp oyun çubuğuma [email protected] adresinden ittim: WiredThing/play.git ve içeri çekmek istediklerinde çerçeve çalışması için bir çekme isteği yayınladım.

    ancak, önceden derlenmiş modunda java kaynağını kaldırmak mümkündür stok oyun açıklamasında, tekrar vurgulamak için değil, şablonlar kaynaklar o önderlenmiş dosyalarından baytkod yükler rağmen mevcut olması gerekir.

    4

    Bu bir kandırmacadır ve bir şablonla hızlı bir testin ötesinde doğrulamamışım, ancak bir teknik çözüm, şablonların içeriğini siliyormuş gibi görünmektedir, böylece dosyalar teknik olarak hala mevcuttur (yani Play mutludur) Ancak, şablonlarınız aslında ortaya çıkmaz.

    İlgili konular