У меня на ноутбуке установлен sdkman. Я работаю над двумя отдельными проектами, где P1 использует Java 11, а P2 использует Java 8. Если я работаю над P1, но что-то происходит и мне нужно поработать над P2, я открою P2, используя свою среду разработки (IntelliJ IDEA). Поскольку P2 использует Java 8, я открою терминал и с помощью sdkman переключу свой компьютер на использование Java 8. Однако, когда я пытаюсь это сделать, я получаю два сообщения об ошибках:
user1@ bin $ sdk по умолчанию java 8.322.06.2-amzn rm: невозможно удалить '/c/Users/user1/.sdkman/candidates/java/current/lib/jrt-fs.jar': Устройство или ресурс заняты ln: не удалось создать символическую ссылку '/c/Users/user1/.sdkman/candidates/java/current/8.322.06.2-amzn': такого файла нет или каталог Когда я просматриваю каталог «current/», вместо того, чтобы он был заполнен Java 8 JDK, он выглядит так, будто «lib/jrt-fs.jar» (оставшийся от предыдущего содержимого Java 11 JDK) не имеет был удален и фактически все еще находится в «current/». Если я попытаюсь удалить «lib/» через файловую систему, мне сообщат, что папку невозможно удалить, поскольку ее использует программа. Я думаю, что IDE не освобождает дескриптор файла, потому что когда я закрываю IDE, я могу удалить папку и использовать sdkman для повторного заполнения папки «current/».

Вопрос: есть ли способ освободить дескриптор файла ide для содержимого в папке «current/», не закрывая ide?
Предостережение. Когда я загуглил фразу «Устройство или ресурс занято», я увидел упоминание о том, что могу каким-то образом использовать команду umount, но я не уверен, что это ложный след или мне просто нужно больше. информация: здесь
Примечание. Я использую Community Edition IntelliJ IDEA версии 2022.3.2
Изменить: вот снимок настроек проекта, показывающий выбор JDK из файловой системы.
