Как очистить папку .m2 Maven?

Многие объяснения уже присутствуют, чтобы объяснить, как это происходит и как это исправить, но вы также должны следовать рекомендациям, чтобы избежать NullPointerException вообще.

См. также: A хороший список лучших практик

Я бы добавил, очень важно, хорошо использовать модификатор final. Использование "окончательной" модификатор, когда это применимо в Java

Сводка:

  1. Используйте модификатор final для обеспечения хорошей инициализации.
  2. Избегайте возврата null в методы, например, при возврате пустых коллекций.
  3. Использовать аннотации @NotNull и @Nullable
  4. Быстрое завершение работы и использование утверждений, чтобы избежать распространения нулевых объектов через все приложение, когда они не должен быть пустым.
  5. Сначала используйте значения с известным объектом: if("knownObject".equals(unknownObject)
  6. Предпочитают valueOf() поверх toString ().
  7. Используйте null safe StringUtils StringUtils.isEmpty(null).

25
задан AlexSC 7 October 2015 в 11:40
поделиться

2 ответа

Совершенно безопасно удалить папку .m2/.repository, так как maven повторно загрузит все необходимые зависимости при необходимости , за исключением ваших локальных проектов . Есть ли какая-нибудь другая папка в разделе .m2 занимающая место?

Для ваших локальных проектов maven будет жаловаться на то, что не нашел их. В этом случае вам просто нужно перекомпилировать и установить их. Они будут загружены в хранилище mvn clean install

26
ответ дан Adel Boutros 7 October 2015 в 11:40
поделиться

Maven загружает все зависимости в папку .m2/repository в домашнем каталоге пользователя (то есть C:\users\[your user name]\.m2\repository в Windows. Когда вы удаляете эту папку, Maven создает папку и загружает зависимости для проектов, которые вы строите, с этого момента). .

Если вы хотите изменить папку на другой каталог, вы можете поместить файл конфигурации Maven settings.xml в каталог .m2. Пример файла можно найти в вашем дистрибутиве Maven в conf. Затем найдите запись localRepository, которая должна быть закомментирована следующим образом:

<!-- localRepository
 | The path to the local repository maven will use to store artifacts.
 |
 | Default: ${user.home}/.m2/repository
<localRepository>/path/to/local/repo</localRepository>
-->

Активируйте ее, установите желаемый путь, например, заставьте Maven загрузить зависимости в D:\myMavenRepository и установить ее. до

<localRepository>D:/myMavenRepository</localRepository>
2
ответ дан Ralf Wagner 7 October 2015 в 11:40
поделиться
Другие вопросы по тегам:

Похожие вопросы: