2012-05-03 10 views
47

Trong Eclipse tôi đã thiết lập các Javadoc tài sản của dự án Scala tôi Location để file:/D:/EclipseWorkspace/MyProject/target/scala-2.9.1/api nơi D:/EclipseWorkspace/MyProject là vị trí của dự án scala tôi.Xem Scaladoc trong Eclipse

Bây giờ, nếu tôi đang ở một file Scala mà thực hiện một lớp/đặc điểm, khi tôi gõ phím Shift +F2, Eclipse sẽ mở trang Scaladoc đó lớp/đặc điểm. Tuy nhiên, điều này không hoạt động nếu nó là một đối tượng vì Eclipse cố mở <ObjectName>.html trong khi tên tệp được tạo bằng Scaladoc là <ObjectName>$.html.

Có cách giải quyết nào không?

+8

AFAIK, không. Trong thực tế, ngay cả _inside Scaladoc chính nó_ người ta không thể liên kết với các đối tượng. Nếu bạn nhìn vào các trang tôi đã viết, như Regex hoặc các công cụ bên trong scala.sys.process, bạn sẽ thấy cách phức tạp tôi đề cập đến chúng, thay vì chỉ đơn giản là liên kết với chúng. Lưu ý rằng, tôi không tuyên bố giới hạn của Scaladoc có liên quan đến giới hạn của Eclipse. –

+1

@Daniel C. Sobral. Cảm ơn. Nếu nó không hoạt động trong chính Scaladoc, người ta không thể mong đợi nó làm việc với cơ chế javadoc eclipse. Tôi chỉ hy vọng rằng nếu chúng ta biết tên bị xé của các tệp lớp học được tạo ra cho các đối tượng thì chúng ta có thể lừa Eclipse để mở html tương ứng. (Đây sẽ chỉ là giải pháp tạm thời vì tên bị xáo trộn có thể thay đổi trong các phiên bản sau của scala/scaladoc) Cách lý tưởng sẽ là scaladoc hỗ trợ liên kết đối tượng và sau đó Scala-IDE ghi đè 'Shift-F2' – dips

+6

Có thử một vài cách khác nhau các thiết lập của Eclipse và các phiên bản scala, tôi chưa bao giờ có thể nhận được gì hơn là hoàn thành mã để hoạt động, và thường tự hỏi làm thế nào (nếu có thể) xem thông tin JavaDoc trong thời gian thực – LaloInDublin

Trả lời

16

Scaladoc hiện được tích hợp từ release 4.0.0 RC1 của plugin Scala-IDE. Bạn chỉ có thể di chuột qua cụm từ của mình hoặc nhấn F2 trong khi con trỏ ở trên số nhận dạng.

4

typesafe có announced một plugin cho trình biên dịch Scala mà tạo ra javadoc cho Scala API của bạn. Plugin và tài liệu của nó có sẵn trên github. Có lẽ điều này sẽ giúp giải quyết vấn đề.