我有Maven项目和Tomcat服务器。 当我点击" Maven LifeCicle"我在IDEA工作 - > "部署",我有一个问题:
[INFO] --- maven-deploy-plugin:2.7:deploy (default-deploy) @ TestMaven ---
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 8.035 s
[INFO] Finished at: 2014-09-20T13:52:32+04:00
[INFO] Final Memory: 11M/93M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-deploy-plugin:2.7:deploy (default-deploy) on project TestMaven: 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.xml的Piace是:
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>tomcat-maven-plugin</artifactId>
<configuration>
<server>tomcat</server>
<url>http://localhost:8080/manager/text</url>
</configuration>
</plugin>
没有工作或:
<plugin>
<groupId>org.apache.tomcat.maven</groupId>
<artifactId>tomcat7-maven-plugin</artifactId>
<version>2.0</version>
</plugin>
也没有用。
答案 0 :(得分:2)
在default maven lifecycle mvn deploy
中意味着将一个或多个构建工件部署到maven存储库。原因是因为maven-deploy-plugin
的{{1}}目标与生命周期的deploy
阶段绑定。当您使用例如打包deploy
时,将自动完成此配置。
在maven中
为了解决您的问题,我首先打包webapp,然后调用jar
的{{1}}目标。
deploy
或只是
tomcat7-maven-plugin
上面的mvn命令意味着:
mvn package org.apache.tomcat.maven:tomcat7-maven-plugin:2.0:deploy
插件的目标mvn package tomcat7:deploy
。如果您想知道maven如何解析deploy
到tomcat7
,您应该阅读有关plugin groups和插件命名约定的更多信息。
答案 1 :(得分:0)
使用maven deploy命令,通常会因各种原因而出错。 如果您在Unix / Linux系统中工作,我建议在控制台上使用“rsync”方法。 (您可以编写自己的shell脚本来轻松管理)。它不仅有助于在没有问题的情况下进行部署,还有助于在重新部署时获得时间(仅上载已更改的/新文件)。因为maven deploy / redeploy会将您的项目作为jar / war中的包上传。但是,“rysnc”方法逐个上传项目文件。
在使用它之前,你应该确定两个条件。
1-您的项目是在目标文件夹(Spring Tool Suite)中构建的
2-您可以通过ssh访问tomcat
示例代码: (v_:前缀,可变(可自定义))
table, th, td {border-collapse: collapse; border: 2px solid; color: #FFFFFF}
th {background-color: black;}
.top {width:110px; height: 25px; background-color: #FFFF00; color: #000000;}
.off {width:110px; height: 25px; background-color: #DDDDDD; color: #000000;}