2012-07-30 23 views
6

Tôi tạo ra một dự án mới sử dụng giao diện điều khiển chơi
bây giờ, theo mặc định tôi có trong thư mục quan điểm của tôi hai tập tin:Phát! khuôn khổ. tạo một cái nhìn mới

main.scala.html 
index.scala.html 

Tôi muốn thêm một tập tin xem mới. Tôi gọi nó là "forums.scala.html"
bây giờ, tôi biết rằng để làm cho một cái nhìn bạn cần phải làm điều này:

views.html.forums.render("Forums"); 

vấn đề là IntelliSense không nhận ra "diễn đàn"
nhưng chỉ mục và chính nó nhận ra.
tôi đã nhận thấy những tập tin:

class_managed/views.html/index.class
class_managed/views.html/main.class

nhưng không có forums.class vì vậy tôi nghi ngờ đây là vấn đề.
Tôi đã cố gắng xây dựng dự án, nhưng nó không giúp ích gì.
vì vậy, giải pháp là gì?

nhờ

Trả lời

9

quan điểm mới của bạn được biên dịch các nguồn tin được quản lý sau khi trình duyệt tiếp theo nhấn nếu bạn đang sử dụng play run để bắt đầu chơi trong chế độ dev.

Nếu bạn sử dụng play ~run, nó sẽ cố gắng biên dịch nó ngay khi nhận được thay đổi trong tệp.

Cuối cùng, nếu bạn bắt đầu ứng dụng của mình ở chế độ sản xuất, ví dụ: qua play start bạn phải dừng lại bằng ctrl+c và chạy lại. Dù sao, phát triển ứng dụng ở chế độ sản xuất chỉ là một ý tưởng tồi :)

Tùy thuộc vào IDE của bạn, có lẽ bạn sẽ cần phải làm mới cấu trúc tệp để cho phép tìm nguồn được quản lý mới tạo.

+0

cảm ơn. Tôi sẽ chụp ảnh vào ngày mai – socksocket

+1

không. nó không giúp được gì. Tôi chạy ứng dụng với lệnh này: "play ~ run", nhưng vẫn forums.scala.html không được biên dịch cho các nguồn được quản lý. – socksocket

+0

Và nếu bạn chạy ứng dụng trong trình duyệt, nó sẽ hiển thị lỗi? – biesior

1

Nếu bạn muốn lập trình bằng scala, đề xuất của tôi là quên về intellisense. Eclipses scala-ide khá buggy, không biết về netbeans. Và vì cách bố trí không chuẩn của ứng dụng play2, các công cụ phát triển không chuẩn (play console), nó thậm chí còn thuận tiện hơn khi sử dụng redactor văn bản đơn giản (như tuyệt vời hoặc textmate) với tính năng thư mục mở như cũ.

+0

Bạn nên thử IntelliJ Idea.Trong phiên bản hiện tại (11), nó bắt đầu nhận ra các lớp xem mới được biên dịch chỉ trong vài giây sau khi biên dịch (có độ trễ nhỏ, tuy nhiên nó không bắt buộc phải thực hiện bất kỳ hành động nào từ người dùng). Phiên bản mới sẽ có mặt vào cuối năm nay (12 - Leda) có thể sẽ hoạt động tốt hơn, vì có kế hoạch hỗ trợ đặc biệt cho Play 2.x – biesior

2

Tìm thấy giải pháp.
chạy lệnh "biên dịch" đã thực hiện công việc.
Tôi hiểu rằng intelliJ làm điều đó tự động, vì vậy tôi có thể sẽ sử dụng nó thay vì nhật thực.

cổ vũ!

+0

Nhưng bạn đã nhấp vào 'biên dịch' trong IDE? Thông thường, giao diện điều khiển của Play sẽ biên dịch các tập tin bên cạnh phần mềm đã sử dụng (nếu đang chạy) để ứng dụng hoạt động bình thường ngay cả khi IDE hiển thị nó như các phần chưa được giải quyết (cho đến khi làm mới thủ công tiếp theo). Và có IntelliJ xem các tài nguyên và nhận ra chúng ASAP – biesior

+0

no.I chạy biên dịch trong giao diện điều khiển – socksocket

6

nhấp chuột phải vào dự án ther và nhấp vào làm mới, làm việc cho tôi - tìm thấy nó trong một chủ đề khác.

+1

Công trình này, ước gì tôi có thể upvote nó nhiều hơn một lần. –

+0

Không hoạt động đối với tôi, với phiên bản Scala-IDE và Play mới nhất. – matanster