Maven: jaki jest cel zakresu" runtime"? [duplikat]

Możliwy duplikat:
zrozumienie zależności między kompilacją a czasem wykonywania

Rozumiem, że zależność z zakresem "runtime" będzie dostępna w czasie wykonywania, a nie w czasie kompilacji. Ale nie rozumiem, dlaczego tego chcesz! Dlaczego nie użyć po prostu zakresu "compile"?

Dokumenty naprawdę nie pomagają. Jakiś pomysł?

 83
Author: Community, 2012-09-05

1 answers

Runtime jest przydatny dla zależności wymaganych do testów jednostkowych i w czasie wykonywania, ale nie w czasie kompilacji. Zazwyczaj może to być dynamicznie ładowany kod, taki jak sterowniki JDBC, które nie są bezpośrednio wymienione w kodzie programu.

Ustawienie zależności na runtime zapewnia, że nie ma przypadkowej zależności od kodu, a także utrzymuje zależność od przechodniości. Tak, że na przykład, jeśli moduł A ma runtime zależność od biblioteki X, a moduł B zależy od modułu a, to czy NIE dziedziczy zależność od biblioteki X. użycie "provided" lub "compile" spowodowałoby, że B będzie zależeć od X.

 93
Author: John Stauffer,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-09-05 02:02:11