2015-04-25 10 views

Odpowiedz

-2

parsera JSON w bibliotece standardowej Scala jest przestarzała. Powinieneś wybrać jedną z solidniejszych bibliotek innych firm, takich jak Jackson, Play-Json, json4s itp.

8

Zwykle oznacza to, że część funkcji została zastąpiona przez inną implementację, której użycie jest preferowane w stosunku do starej. a takie pytanie oznacza po prostu, że OP jest zbyt leniwy, aby google docs. Jest to szczególnie ważne w przypadku bibliotek w języku Java, które bardzo poważnie traktują kompatybilność wsteczną (do tego stopnia, że ​​dla niektórych staje się to uciążliwe). Ekosystem Scala nie jest tak restrykcyjny pod tym względem, a uaktualnienie do nowszej wersji tego języka oznacza, że ​​można uzyskać inny interfejs API lub nawet binary incompabilities. Zobacz także Scala: binary incompatibility between releases. To nie jest komentarz do Scali. Istnieją uzasadnione powody, dla których istnieją niezgodności.

Muszę jednak przyznać, że documentation for scala.util.parsing.json nie zawiera żadnych informacji dotyczących zalecanego zastąpienia tej funkcji. Zajęło mi trochę czasu, aby wykopać coś, co zaledwie przypomina wyraźne stwierdzenie, co jest zalecanym zamiennikiem.

Wydaje się, że w społeczności trwało wiele dyskusji na temat punktu widzenia i konsekwencji tej deprecjacji. Polecam lekturę this thread in the scala-users group, jeśli jesteś zainteresowany.

Najbardziej przytoczone przyczyny tego wycofania wydają się być w pobliżu słabej wydajności i bezpieczeństwa wątków.

Wycofanie zostało wykonane jako część this Jira issue. Zaleca się użycie różnych analizatorów składni w komentarzu zamknięcia this related task that was not completed due to the deprecation.

Alternatywy obejmują:

Aby odpowiedzieć na twoje pytanie. To jest ostrzeżenie, twój kod nie powinien się łamać, dopóki ten obiekt nie zostanie faktycznie usunięty. Jeśli jednak nowe błędy zostaną znalezione w tej funkcji, najprawdopodobniej nie zostaną naprawione. Kod można także przerwać w przypadku uaktualnienia do nowszej wersji systemu Scala, że ​​faktycznie ma te pakiety usunięte (wersja 2.11.0 i powyżej, according to the documentation)

Powiązane problemy