2012-06-06 15 views
9

शुभ दिन। कृपया मुझे सलाह दें। समस्या यह है कि नियंत्रक टेम्पलेट नहीं देखता मैं का उपयोग करना चाहते है:play2 ढांचा मेरा टेम्पलेट नहीं देखा गया है। : पैकेज Views.html मौजूद नहीं है

package controllers; 

import play.mvc.Controller; 
import play.mvc.Result; 
import models.EtlWorkflowSeqNode; 
import play.db.jpa.Transactional; 
import views.html.etlworkflowseqnode.list; /*LINE #7, Eclipse really tells that there is no such package*/ 

public class EtlWorkflowSeqNodeController extends Controller { 

    @Transactional 
    public static Result list(Integer jobId) { 
     return ok(
      list.render(EtlWorkflowSeqNode.findTree(jobId)) 
     ); 
    } 
} 

मैं अपने प्रोजेक्ट पेड़ के साथ एक छवि संलग्न किया है:

[etl_admin] $ compile [info] Compiling 3 Scala sources and 4 Java sources to D:\ECLIPSE_WORKSPACES\play2_apps\etl_admin\target\scala-2.9.1\classes... [error] D:\ECLIPSE_WORKSPACES\play2_apps\etl_admin\app\controllers\EtlWorkflowSeqNodeController.java:7: error: package views.html.etlworkflowseqnode does not exist [error] import views.html.etlworkflowseqnode.list; [error]
^[error] D:\ECLIPSE_WORKSPACES\play2_apps\etl_admin\app\controllers\EtlWorkflowSeqNodeController.java:14: error: cannot find symbol

[error] list.render(EtlWorkflowSeqNode.findTree(jobId)) [error] ^[error] symbol: variable list [error]
location: class EtlWorkflowSeqNodeController [error] 2 errors [error] {file:/D:/ECLIPSE_WORKSPACES/play2_apps/etl_admin/}etl_admin/compile:compile: javac returned nonzero exit code [error] Total time: 7 s, completed 05.06.2012 17:14:44

यहाँ नियंत्रक कोड है। ऐसे पैकेज हैं और "सूची" नामक टेम्पलेट है। My Eclipse मैं क्या गलत

उत्तर

14

ओमग, समस्या इतनी आसान थी! * class_managed * (यह फ़ोल्डर संकलित स्कैला टेम्पलेट रखता है) नए जोड़े गए टेम्पलेट्स के साथ अपडेट नहीं किए गए थे। मैंने कल को संकलित करने का प्रयास किया संकलित करें, इससे मदद नहीं मिलती है। नए पैकेज से नए टेम्पलेट संकलित नहीं किए गए थे। आज सुबह मैंने कहा है स्वच्छ संकलन aaand ... हुरे! मुझे संकलित टेम्पलेट्स और समस्या गुम हो गई पैकेज के साथ समस्या मिली (ग्रहण प्रोजेक्ट को रीफ्रेश करना न भूलें, इसे फाइल सिस्टम से exisitng प्रोजेक्ट स्ट्रक्चर को अपडेट करने के लिए मजबूर करें। यह सबकुछ कैश करना पसंद करता है।)

परेशान करने के लिए खेद है, ऐसा लगता है मैं चौकस प्रलेखन :(

+0

मुझे संभवतः समस्या से संबंधित समस्या है: जब मैं एक स्कैला टेम्पलेट बदलता हूं, उदा। इसमें एक और आवश्यक पैरामीटर जोड़ें जो अभी तक नियंत्रक में नहीं जोड़ा गया है, मुझे ग्रहण में त्रुटि प्राप्त होने की उम्मीद है। होवर, ग्रहण किसी भी तरह से स्कैला टेम्पलेट में परिवर्तनों को अपडेट नहीं करना प्रतीत होता है? जब मैं ब्राउज़र में पेज खोलता हूं, तो मुझे अपेक्षित संकलन त्रुटि संदेश मिलता है। कोई विचार यह कैसे दूर करने के लिए? – Bachi

+0

@ बाची आपको एक नया प्रश्न पूछना चाहिए। – paradigmatic

+0

1. प्ले कंसोल चलाएं, 2. साफ निष्पादित करें, फिर संकलन निष्पादित करें, 3. ग्रहण पर वापस जाएं और अपनी प्रोजेक्ट रीफ्रेश करें। ग्रहण हम टेम्पलेट्स में परिवर्तन देखेंगे (प्रबंधित_क्लास फ़ोल्डर से संकलित बाइटकोड रीफ्रेश करें) और आप इसका उपयोग जारी रख सकते हैं। – Sergey

1

क्या कर जहां तक ​​मेरा बता सकते हैं, तो आप एक पैकेज का नाम etlworkflowseqnode नहीं मिला है! सूची टेम्पलेट आयात करने के लिए सही तरीका है, इस तरह होना चाहिए:

import views.html.list; 

या, यदि आप एक से अधिक बार देखा गया है करने के लिए जा रहे हैं, आप उन सभी वाइल्डकार्ड के आयात के साथ आयात कर सकते हैं।

import views.html.*; 
6

समस्या यह है कि ग्रहण src_managed फ़ोल्डर, जो गतिशील रूप से खेलने के ढांचे द्वारा अद्यतन किया जाता है देख पा रहा है है पढ़ते समय नहीं था।

जाओ परियोजना के लिए → गुण → जावा का निर्माण पथ → पुस्तकालय (यह एक टैब है) → बाहरी वर्ग फ़ोल्डर

फिर जोड़ें src_managed फ़ोल्डर का चयन करें, जो आपके प्रोजेक्ट के समान निर्देशिका में फ़ोल्डर लक्ष्य-> scala-x.x.x में होना चाहिए।

यह अपने निर्माण पथ के लिए src_managed जोड़ देगा, और ग्रहण अब समझ जायेंगे कि इन खाकों मान्य हैं।

आप चलाने खेलने ढांचे सांत्वना फिर आप प्रोजेक्ट को चलाने की आवश्यकता हो सकती में 'क्लीन संकलन खेलने' की जरूरत हो सकती - हल करने के लिए "पैकेज views.html नहीं करता मौजूद नहीं" ग्रहण

में> स्वच्छ
+0

ऐसा लगता है कि आजकल टेम्पलेट्स src_managed पर नहीं बल्कि twirl निर्देशिका पर हैं। –

0

:

"एसबीटी संकलन" या "एसबीटी स्वच्छ संकलन" चलाएं। यही कारण है कि xx \ घुमाव \ मुख्य \ views.html

+0

मेरे लिए काम नहीं किया। मुझे लक्ष्य/स्कैला-2.10 नामक घुमाव – daniyel

+0

में कोई फ़ोल्डर नहीं दिखता है, मैं अपने इंटेलिज टर्मिनल से "एसबीटी क्लीन कंपाइल" चलाने के लिए उपयोग करता हूं और यह हर बार मेरे लिए काम करता है। यदि यह आपके लिए काम नहीं करता है तो फ़ाइल चुनकर अपने सिस्टम कैश को साफ करने का प्रयास करें अमान्य कैश/Intellij मेनू से पुनरारंभ करें –

2

प्ले 2 में लक्ष्य \ स्केला के रूप में अपनी परियोजना में एक फ़ोल्डर संरचना बनाना चाहिए।अजीब तरह इसे का उपयोग है कि जटिल समस्याओं के बिना

return ok(index.render("Hello")); 

कुछ इस तरह,: नियंत्रक के अंदर फिर

import views.html.index; 

:

आयात दृश्य: 5, मैं इस मुद्दे के साथ ठीक करने में सक्षम था return ok(views.html.index.render("Hello"))) आयात करते समय काम नहीं कर रहा था, फिर इसका उपयोग अच्छी तरह से किया।

निश्चित रूप से सभी यहां उपयोगी भी उत्तर देते हैं, कभी-कभी समस्या को साफ करना और फिर संकलित करना है, लेकिन यह भी वास्तव में समस्या को हल नहीं कर रहा है, भले ही आप जिस आईडीई का उपयोग कर रहे हैं, मैं सीएलआई का उपयोग कर रहा था और cannot find symbol त्रुटि दे रहा था भी।

संबंधित मुद्दे