как мне справиться с /tmp/jar_cache#######.tmp?

Я использую Springboot 2.1.4 с EmbeddedTomcat. Когда я запускаю свой сервер, создается файл /tmp/jar_cache###.tmp. Как я могу справиться с jar_cache###.tmp?

Я использую CENTOS 7 и версию Java "1.8.0_162".

  1. Если я изменю tmpdir на другой каталог, а не на /tmp, то как мне справиться с большим количеством jar_cache###, созданным по умолчанию?

  2. Использование каталога /tmp. Что делать, если jar_cache был очищен, который использовался в моем приложении?

java    46030  www  DEL       REG              253,2                2830 /tmp/jar_cache7122103988160656171.tmp
java    46030  www  DEL       REG              253,2                2842 /tmp/jar_cache8134973409906757503.tmp

java    46030  www   25r      REG              253,2    414240      2830 /tmp/jar_cache7122103988160656171.tmp (deleted)
java    46030  www   27r      REG              253,2    800016      2842 /tmp/jar_cache8134973409906757503.tmp (deleted)

person Dylee    schedule 25.04.2019    source источник
comment
В чем проблема с этими файлами?   -  person LMC    schedule 25.04.2019


Ответы (1)


По-видимому, в некоторых версиях SpringBoot есть ошибка, которая приводит к накоплению jar_cache файлов (в состоянии DEL):

Согласно ссылкам на трекер проблем, это было исправлено в SpringBoot 2.0.0.

Теперь я вижу из вашего вопроса, что вы используете 2.1.4, поэтому, вероятно, это не конкретная проблема, описанная выше, которая вызывает вашу проблему. Однако в первой ссылке могут быть подсказки, которые могут помочь вам понять, чем вызвана ваша проблема.

Чтобы ответить на ваши вопросы:

  1. Да, они создаются по умолчанию, но их следует очищать при перезапуске приложения.
  2. Я ожидаю, что изменение TMPDIR повлияет на то, где создаются файлы. Попробуйте и посмотрите!
  3. Удаление файлов из каталога не освободит файловое пространство, если приложение все еще имеет открытые файлы.

Также может удалить файлы, вызвав System.gc(). Да, как правило, вызывать System.gc() из соображений производительности — плохая идея. Но это может быть обходным путем, если файлы кеша действительно проблематичны.

person Stephen C    schedule 25.04.2019