Я пытаюсь настроить репозиторий Maven для некоторых jar-файлов от поставщиков и из классов, которые я написал.
Он работает для файлов jracle jar, которые я вставил, но не для моего собственного jar.
Я настроил веб-сервер apache для работы в качестве хранилища mvn.Я установил каталоги, чтобы показать индекс файлов (Опции индексов).
Вот что фрагмент из моего корня pom.xml
<repositories> <repository> <id>mycompany-external-repo</id> <url>http://svn.mycompany.com/mvn</url> </repository> </repositories>
Вот фрагмент для pom.xml одного проекта сзависимости
<dependency> <groupId>com.oracle.aq</groupId> <artifactId>aqapi</artifactId> <version>10.2.0.1.0</version> </dependency> <dependency> <groupId>com.mydomain</groupId> <artifactId>middleware</artifactId> <version>1.0</version> </dependency>
URL-адреса хранилища mvn примерно такие:
http://svn.mycompany.com/mvn/com/oracle/aq/aqapi/10.2.0.1.0/aqapi-10.2.0.1.0.jar http://svn.mycompany.com/mvn/com/mydomain/middleware/1.0/middleware-1.0.jar
Что я делаю не так с моим файлом jar?
Вот результатустановки mvn
[INFO] Scanning for projects... [INFO] [INFO] ------------------------------------------------------------------------ [INFO] Building core 1.0-SNAPSHOT [INFO] ------------------------------------------------------------------------ Downloading: http://svn.mycompany.com/mvn/com/mydomain/middleware/1.0/middleware-1.0.pom Downloading: http://repo1.maven.org/maven2/com/mydomain/middleware/1.0/middleware-1.0.pom [WARNING] The POM for com.mydomain:middleware:jar:1.0 is missing, no dependency information available
вам нужно настроить зеркало, я полагаю, вы используете Maven 2 или 3:
<mirror> <id>server_id</id> <name>Maven Repository running in your company</name> <url>http://svn.mycompany.com/mvn/</url> <mirrorOf>*</mirrorOf> </mirror>
Maven сначала ищет помп в ожидаемом месте репо, прежде чем он будет искать другие артефакты, без него он не сможет их извлечь, потому что не будет знать, как обращаться с какими-либо зависимостями для артефакта.
Вот почему может быть лучше использовать что-то вроде Artifactory , которая имеет полнофункциональную версию с открытым исходным кодом. Artifactory автоматически создаст для вас информацию о pom при развертывании артефакта и знает, как управлять попытками развертывания. И, ну, это будет намного больше, чем просто предоставление сайта для ваших артефактов.