2011-10-22 39 views
7

Tôi là một lập trình viên Scala hoàn toàn mới, và tôi không có kinh nghiệm trước đó với Java; Tôi đến từ ruby. Tôi đang cố gắng chạy chương trình mẫu TDD đầu tiên của mình. Tôi đang lên kế hoạch cho một cái gì đó rất nhỏ, với 5 hoặc 6 bài kiểm tra. Tôi đang cố gắng sử dụng specs2 lib. Tôi không có IDE, tôi thường lập trình với vim và thực thi các công cụ từ dòng lệnh.Làm cách nào để chạy Scala + specs2 từ dòng lệnh?

Làm cách nào để làm việc với scala & specs2 trên tệp .scala nhỏ của tôi từ dòng lệnh?

Trong Quick Start họ đề cập đến điều này:

scala -cp ... specs2.run HelloWorldSpec 
  1. tôi không có bất kỳ ý tưởng những gì mà elipsis (...) đang đứng cho. Tôi phải đặt gì ở đó?
  2. Tham chiếu lệnh đó (tôi giả định) một tệp có tên là specs2.run. Nhưng trên phần tải xuống, tôi chỉ nhận được tệp .jar. Ở đâu là specs2.run?
  3. Trong phần dependencies tôi được đưa ra giữa hai công nghệ - sbt và maven (tôi googled cho họ, không biết chúng trước). Tôi có phải sử dụng sbt/maven không có vấn đề gì? Tôi không thể sử dụng lệnh console? Nó chỉ có 1 tập tin với 5 bài kiểm tra.
  4. Tôi biết rằng có một ứng dụng mẫu, nhưng lại không có hướng dẫn về cách chạy ứng dụng đó. Tôi nghĩ rằng nó được chuẩn bị để làm việc với sbt và maven. Tôi thà không phải học cách sử dụng bất kỳ cái nào để thực hiện một bài kiểm tra nhanh. Có thể không?

Cảm ơn rất nhiều.

Trả lời

10

Chào mừng bạn đến với scala và thông số kỹ thuật2!

  1. Các ... đứng cho các đường dẫn cho tất cả các lọ bạn cần để chạy các thông số kỹ thuật, trong đó có riêng của bạn (hoặc một đường dẫn đến một thư mục chứa các file .class). Những lọ được liệt kê trên trang Runners. Để có thông số kỹ thuật đơn giản, bạn chỉ cần scalaz-core, scalaz-concurrentspecs2.

  2. specs2.run là tên đầy đủ của lớp được sử dụng để chạy đặc tả của bạn trên dòng lệnh. Vì vậy, một lệnh đầy đủ để chạy một đặc tả trông giống như:

    scala -cp scalaz-core.jar:scalaz-concurrent.jar:specs2.jar:your-classes-directory specs2.run YourSpecification

  3. Bạn thực sự có thể sử dụng dòng lệnh chỉ mà không SBT hoặc maven nếu bạn biết được nơi để có được lọ bạn cần và làm thế nào để biên dịch scala của bạn các lớp (sử dụng lệnh scalac)

  4. có, ứng dụng mẫu đi kèm với tệp dự án sbt và maven để chạy thử nghiệm chỉ mất sbt test chẳng hạn. Nếu bạn làm điều đó, sbt cài đặt tất cả các phụ thuộc cần thiết, biên dịch các lớp và chạy các bài kiểm tra. Tôi nghĩ rằng đây là cách tốt nhất để bắt đầu (làm theo các SBT install guide, nó IMHO rất nhanh) nhưng một lần nữa, đối với một dự án đơn giản, bạn cũng có thể làm điều đó bằng tay

+0

Thanks a lot, Eric! – kikito

+0

Một số liên kết đã lỗi thời. –

+0

Cập nhật liên kết: http://etorreborre.github.io/specs2/ –

Các vấn đề liên quan