2013-02-01 10 views
5

Zbudowałem szkielet projektu sbt, który wykorzystuję jako punkt wyjścia dla rozwijanych przeze mnie programów.SBT skarży się na deprecjację

Od jakiegoś czasu mam problem z otrzymaniem 2 ostrzeżeń o wycofaniu po uruchomieniu nowego projektu z tym szkieletem. Szkielet nie składa się z żadnych plików źródłowych, a nawet jeśli tak, mój build.sbt posiada opcję "-deprecation", która działa poprawnie podczas pisania przestarzałego kodu w źródłach projektu.

Samo ostrzeżenie wygląda następująco:

[info] Kompilacja 1 Źródło Scala do /xxx/.../xxx/.sbt/staging/xxx/target/scala-2.9.2/sbt -0.12/classes ...
[warn] 1 ostrzeżenia o wycofaniu; ponownie uruchom z -deprecation dla szczegółów
[warn] jedno ostrzeżenie znalezione
[informacje] Kompilowanie 1 źródła Scala do /xxx/.../xxx/project/target/scala-2.9.2/sbt-0.12/klasses ...
[warn] było 1 ostrzeżenie o wycofaniu; re-run z -deprecation szczegółowe informacje
[warn] jedno ostrzeżenie znaleźć

Choć powodem pierwsze ostrzeżenie wydaje się być przestarzałe .sbt-folderze problem (tak, sama to ostrzeżenie nie wydaje się być duży problem w mojej strukturze) Jestem nieco zdezorientowany drugim ostrzeżeniem i chciałbym zapytać, czy ktoś wie jak uruchomić sbt sam z opcją "-deprecation".

Wystarczy, aby wyjaśnić i podkreślić, że jest to nie powielanie jako korefn zasugerował:

scalacOptions ++ = seq ("-unchecked", "-deprecation")

jest już w środku i ostrzeżenia pojawiają się tylko wtedy, gdy sbt zostanie zastosowany po raz pierwszy na szkielecie. Potem sbt milczy.

Nie ma również błędu, opcja ta działa dobrze dla dowolnego pliku źródłowego przechowywanego w szkielecie.

+0

dupe http://stackoverflow.com/questions/15480347/ – fommil

Odpowiedz

-1

To jest duplikat. check do sporządzania roztworu scala-sbt-how-to-re-run-with-deprecation lub how-to-see-all-the-warnings-in-sbt-0-11

zasadzie dodać do build.sbt:

scalacOptions ++= Seq("-unchecked", "-deprecation","-feature") //any other option 
//you like 
+0

Przepraszam, ale jak już wspomniałem, to już jest w środku. Ale te opcje skalne nie wydają się być stosowane, gdy szkielet jest uruchamiany po raz pierwszy. – her

+0

Czy próbowałeś skompilować przykład Witaj świecie, aby dowiedzieć się, jakie raporty są zgłaszane (ostrzeżenia dotyczące wycofywania/funkcji)? – korefn

+0

Szkielet projektu jest źródłowo pusty, a nawet jeśli umieszczę poprawny świat hellow przed pierwszym zastosowaniem sbt na zachowanie szkieletu pozostaje taki sam. Szkielet składa się z pojedynczej struktury folderów src, niektórych konfiguracji git (.gitignore, itp.), Konfiguracji vima, niektórych natywnych bibliotek i plików tekstowych. W przeciwnym razie przechowuje tylko moje pliki konfiguracyjne sbt. Konfiguracja sbt obsługuje często używane wtyczki, z których wszystkie działają. Zakładam, że ostrzeżenie musi dotyczyć procesu "kompilacji" plików konfiguracyjnych, ponieważ występują one tylko wtedy, gdy sbt zostanie po raz pierwszy zastosowany w szkielecie. – her

6

Ok, ja otrzymała 2 możliwe rozwiązania przez SBT-Group, które chcesz udostępnić, ponieważ może to mieć zainteresowanie dla innych.

Rozwiązanie 1: poprzez konsolę SBT ...

  • reload wtyczek
  • zestaw scalacOptions ++ = seq ("-unchecked", "-deprecation")
  • sesja Zachowaj
  • przeładować powrotu

Roztwór 2: miejsce po raz drugi wiersz "scalacOptions ++ = seq ("-unchecked", "-deprecation")" w .sbt akt pod proj ect-katalog. Wartością domyślną będzie projekt/wtyczki.sbt

Uwaga: "scalacOptions ++ = Seq (" -unchecked "," -deprecation ")" w build.sbt przechwytuje ostrzeżenia o źródłach projektu, ale nie na wtyczkach sbt, itp., jak wspomniano w moim oryginalnym pytaniu.

Powiązane problemy