Исправление ошибки Maven «Невозможно загрузить элемент кэша» в Ubuntu 20.04.2 LTS с Java 17

Убунту 12

Maven — это мощный инструмент управления проектами, который разработчики используют для создания и управления любым проектом на основе Java. Однако, как и любой другой инструмент, он иногда может выдавать ошибки, которые на первый взгляд могут показаться пугающими. Одна из таких ошибок — «Невозможно загрузить элемент кэша». Эта ошибка часто связана с проблемой совместимости версий между Maven и Java. В этой статье мы сосредоточимся на том, как исправить эту ошибку при использовании Ubuntu 20.04.2 LTS с Java 17.

Чтобы исправить ошибку Maven «Невозможно загрузить элемент кэша» в Ubuntu 20.04.2 LTS с Java 17, у вас есть два варианта. Первый вариант — обновить Maven до версии, совместимой с Java 17, например Maven 3.8.6. Второй вариант — указать более низкую версию Java в конфигурации Maven, например Java 16.

Понимание ошибки

Сообщение об ошибке «Невозможно загрузить элемент кэша» предполагает, что Maven не может загрузить элемент кэша из-за проблемы с классом com.google.inject.internal.cglib.core.$MethodWrapper. Похоже, эта проблема связана с совместимостью версий Maven и Java. Например, если вы используете Maven 3.6.3 с Java 17, вы можете столкнуться с этой ошибкой, поскольку Maven 3.6.3 не полностью совместим с Java 17.

Решение 1. Обновите Maven

Один из самых простых способов исправить эту ошибку — обновить Maven до версии, совместимой с Java 17. На момент написания Maven 3.8.6 является последней версией и совместим с Java 17. Вот шаги чтобы вручную установить Maven 3.8.6:

  1. Загрузите Maven 3.8.6: Вы можете скачать его с сайта Веб-сайт Apache Maven. Выберите двоичный архив tar.gz.
  2. Извлеките архив: используйте команду tar, чтобы извлечь архив. Параметр -xzf используется для извлечения файлов из архива gz.

tar -xzf apache-maven-3.8.6-bin.tar.gz

  1. Переместите извлеченный каталог: переместите извлеченный каталог в каталог /opt/.

sudo mv apache-maven-3.8.6 /opt/maven

  1. Настройте переменные среды: настройте переменные среды M2_HOME, JAVA_HOME и PATH.

echo “export M2_HOME=/opt/maven” >> ~/.bashrc echo “export JAVA_HOME=/usr/lib/jvm/java-17-openjdk-amd64” >> ~/.bashrc echo “export PATH=${M2_HOME }/bin:${PATH}” >> источник ~/.bashrc ~/.bashrc

  1. Проверьте установку: проверьте установку, проверив версию Maven.

МВН -версия

Если установка прошла успешно, эта команда выведет версию Maven, которую вы только что установили.

Решение 2. Укажите более низкую версию Java

Если обновление Maven невозможно, другое решение — указать более низкую версию Java в конфигурации Maven. Вот как вы можете это сделать:

  1. Установите более раннюю версию Java. Установите Java 16 или более раннюю версию с помощью менеджера пакетов apt.

sudo apt установить openjdk-16-jdk

  1. Создайте файл ~/.mavenrc. Этот файл позволяет указать переменные среды для Maven.

нано ~/.mavenrc

  1. Установите переменную среды JAVA_HOME: в файле ~/.mavenrc установите для переменной среды JAVA_HOME путь к более ранней версии Java.

экспорт JAVA_HOME=/usr/lib/jvm/java-16-openjdk-amd64

  1. Сохраните и закройте файл: нажмите Ctrl + X, затем Y и, наконец, Enter, чтобы сохранить и закрыть файл.
  2. Проверьте конфигурацию. Запустите команду Maven, чтобы убедиться, что конфигурация работает.

МВН -версия

Если конфигурация прошла успешно, эта команда выведет версию Maven и версию Java, которую она использует.

В заключение, ошибку «Невозможно загрузить элемент кэша» в Maven в Ubuntu 20.04.2 LTS с Java 17 можно исправить, обновив Maven до версии, совместимой с Java 17, или указав более низкую версию Java в конфигурации Maven. Оба решения эффективны, поэтому выберите тот, который лучше всего соответствует вашей ситуации.

Maven — это инструмент управления проектами, используемый в основном для создания и управления проектами на основе Java. Это помогает автоматизировать процесс управления зависимостями проекта, компиляции, тестирования и упаковки.

Maven работает на основе декларативного XML-файла, называемого pom.xml (объектная модель проекта). Этот файл содержит информацию о проекте, зависимостях, плагинах и конфигурациях сборки. Maven использует информацию в pom.xml для загрузки зависимостей, компиляции исходного кода, запуска тестов и создания артефактов, таких как файлы JAR или WAR.

Вы можете проверить версию Maven, установленную в вашей системе, выполнив в терминале следующую команду:

МВН -версия

Это отобразит версию Maven вместе с другой информацией, такой как версия Java и домашний каталог Maven.

Чтобы обновить Maven до последней версии, вы можете выполнить действия, упомянутые в решении 1 статьи. Загрузите последнюю версию Maven с сайта Веб-сайт Apache Maven и установите его вручную. Обязательно обновите переменные среды соответствующим образом.

Да, вы можете указать более низкую версию Java в конфигурации Maven. Выполните шаги, упомянутые в решении 2 статьи, чтобы установить для переменной среды JAVA_HOME путь к более ранней версии Java. Затем Maven будет использовать указанную версию Java для проекта.

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

Похожие записи

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *