2010-07-02 3 views
7

Как я могу принудить Maven к использовать только мой локальный репозиторий и отдельный конкретный репозиторий в интрасети и не загружать что-либо из Интернета? Даже у моих POMs есть встроенный репозиторий одной компании, maven отправляется в интернет-репозитории, взятые из файлов POM от libs для извлечения зависимостей.Как предотвратить доступ Maven к удаленным репозиториям?

ответ

5

В вашем файле settings.xml (обычно в разделе% user.home% /. M2) вы можете настроить это.

E.g.

<mirrors> 
    <mirror> 
     <id>repo.example.com</id> 
     <mirrorOf>*</mirrorOf> 
     <name>Internal repo</name> 
     <url>http://repo.example.com/repo</url> 
    </mirror> 
</mirrors> 

Ключевая часть есть <mirrorOf>*</mirrorOf>, что означает, что все запросы будут направлены в этом хранилище.

+0

Я пробовал, и все получилось. Я немного подожду, прежде чем отмечать это как решение, так как это выглядит как взломать - я надеялся на какой-то конкретный параметр или параметр командной строки cmd и т. Д. Спасибо за решение моей практической проблемы в любом случае! –

+2

Это вовсе не хак, так вы настраиваете менеджера глобальных репозиториев. Это то, что мы рекомендуем людям делать, когда они настраивают что-то вроде Nexus. –

Смежные вопросы