Я получаю следующее сообщение об ошибке, когда я хочу запустить «MVN развернуть» в моем проекте:Проблемы с Maven
[INFO] --- maven-deploy-plugin:2.7:deploy (default-deploy) @ JImp ---
[INFO] Downloading: https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus-utils/1.5.6/plexus-utils-1.5.6.jar
[INFO] Downloaded: https://repo.maven.apache.org/maven2/org/codehaus/plexus/plexus-utils/1.5.6/plexus-utils-1.5.6.jar (245 KB at 188.8 KB/sec)
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 17.973 s
[INFO] Finished at: 2014-12-16T10:35:39+01:00
[INFO] Final Memory: 24M/226M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-deploy-plugin:2.7:deploy (default-deploy) on project JImp: Deployment failed: repository element was not specified in the POM inside distributionManagement element or in -DaltDeploymentRepository=id::layout::url parameter -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoExecutionException
Мой POM-файл выглядит следующим образом:
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>JImp</groupId>
<artifactId>JImp</artifactId>
<version>0.0.1-SNAPSHOT</version>
<build>
<sourceDirectory>src</sourceDirectory>
<plugins>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.1</version>
<configuration>
<source>1.7</source>
<target>1.7</target>
</configuration>
</plugin>
</plugins>
</build>
<dependencies>
<dependency>
<groupId>org.apache.xmlbeans</groupId>
<artifactId>xmlbeans</artifactId>
<version>2.6.0</version>
</dependency>
<dependency>
....
</dependency>
</dependencies>
</project>
В моем проекте я я использую кучу jar-Files (например, SWT, Log4j и т. д., но также и собственные библиотеки). Но все они добавлены в мой локальный репозиторий (мои собственные библиотеки, добавленные mvn install: install-file ..) и в зависимости от моего POM .. В Eclipse мой проект «знает» все импортные, код выглядит хорошо, не содержит ошибок или что-то подобное ..
Если бы я только запустить
mvn package
и затем выполняя свою баночку
java -cp target\JImp-0.0.1-SNAPSHOT.jar de.my.path.JImp
он бросает ClassNotFoundException, потому что он не мог найти класс мой собственный lib .. Но эта lib добавляется в локальный репозиторий и к папке в моем POM-файле. :/
Возможно, вы могли бы мне помочь .. !!
Я очень ценю вашу помощь!
я нашел: «Maven сначала пытается использовать локальную копию указанного артефакта Если артефакт не существует в локальном хранилище, он будет пытаться загрузить из удаленного хранилища» (http://maven.apache.org/pom.html#Repositories) Почему мне нужно определить репозиторий, когда я хочу использовать mvn deploy? – mrbela
И достаточно ли вызывать пакет mvn или мне нужно запустить весь жизненный цикл по умолчанию (проверка, компиляция, тестирование, пакет, интеграция-тест, проверка, установка, развертывание) путем вызова mvn deploy – mrbela
'mvn deploy' command привыкнуть загружать *** свой артефакт *** в удаленный репозиторий. Если вы просто хотите добавить в локальный репозиторий, тогда будет выполняться 'mvn install'. – Adi