после вызова System.load() используемая .dll (.so пока под Linux не проверяли, но кажется, там так же) не освобождается при переразвёртывании этого веб-приложения. В итоге директория с приложением после этого неудаляема, поскольку нативная библиотека уже загружена в память.
Под линухом этой проблемы не будет, если я правильно понял. Там можно удалять файлы и каталоги, используемые другими процессами. Высвобождение inode выполняется после того, как на него не осталось ссылок (из родительского каталога и от активных процессов). Поэтому, например, можно обновлять компоненты системы на лету (даже KDE, не останавливая его).