2013-04-16 17 views
8

Tôi đang tạo tệp HTML ScalaDoc cho một số dự án SBT (trong một Multi-Project configuration). Nếu tôi thực thi doc trong bảng điều khiển SBT, tài liệu được tạo độc đáo, nhưng nó được triển khai trong một thư mục độc lập cho từng dự án. Vì tất cả các dự án đều có liên quan chặt chẽ với nhau (về tên gói), nên tôi muốn tạo một thư mục ScalaDoc duy nhất làm đầu ra. Nó đáng nói đến là tôi không thể đặt tất cả các nguồn với nhau vì quá trình biên dịch kép được yêu cầu bởi một số macro liên quan. Có cách nào khác để làm như vậy không?Làm cách nào để hợp nhất tài liệu từ nhiều dự án SBT?

+1

Xin chào Jesús! Bạn đã xem https://github.com/sbt/sbt-unidoc, một "sbt plugin để hợp nhất scaladoc/javadoc trên nhiều dự án" chưa? Disclaimer: Tôi không bao giờ thử nó ra, và tôi nghĩ rằng nó chỉ đơn giản hóa việc chạy scaladoc trên tất cả các nguồn cùng một lúc; họ ghi lại rằng nó tương thích với '-Ymacro-no-expand'. – Blaisorblade

+0

Tôi thêm nó vào backlog của tôi, bởi vì nó có vẻ thực sự thú vị cho trường hợp của chúng tôi. Cảm ơn! – jeslg

Trả lời

3

Thật không may, scaladoc không hoạt động với trình biên dịch riêng biệt vì nó không thể hợp nhất tài liệu được tạo. Tài liệu phải được tạo cho tất cả các nguồn cùng một lúc. Giải pháp cho vấn đề macro là sử dụng -Ymacro-no-expand để không mở rộng macro trong quá trình tạo mô hình scaladoc. Xem thêm https://issues.scala-lang.org/browse/SI-6812

+0

Tôi không tìm thấy sự cố Scala đó! Cảm ơn Mark. – jeslg