Maven Tomcat部署失败,非空密码

时间:2012-12-08 15:42:22

标签: tomcat7 maven-3

当密码 空白时,我能够 成功 通过maven tomcat插件将我的战争部署到tomcat强>:

的settings.xml

<server>
  <id>local_tomcat</id>
  <username>admin</username>
  <password></password>
</server>

Tomcat的users.xml中

<role rolename="manager-gui" />
<role rolename="manager-script" />
<user username="admin" password="" roles="tomcat,admin,manager-gui,manager-script" />

但是,如果我只将密码更改为非空白(例如foobar)并重新启动tomcat,那么我将无法再部署:

[ERROR] Failed to execute goal org.codehaus.mojo:tomcat-maven-plugin:1.1:deploy (default-cli) on project myapp: Cannot invoke Tomcat manager: Server returned HTTP response code: 401 for URL: http://localhost:8080/manager/html/deploy?path=%2Fmyapp&war= -> [Help 1]

知道可能导致什么原因吗?

修改

我的pom.xml有:

<plugin>
  <groupId>org.codehaus.mojo</groupId>
  <artifactId>tomcat-maven-plugin</artifactId>
  <configuration>
     <server>local_tomcat</server>
     <url>http://localhost:8080/manager/html</url>
  </configuration>
</plugin>

2 个答案:

答案 0 :(得分:0)

基于docs,如果密码为空,则不应在插件的配置块中定义服务器标签。

此外,我建议使用tomcat-maven-plugin of Apache

答案 1 :(得分:0)

对于我来说,当使用文本管理器端点(http://localhost:8080/manager/text)和仅分配了管理器脚本角色的用户(而不是经理 - )时,它使用了tomcat 7和Apache的tomcat-maven-plugin。 GUI)。另请参阅http://tomcat.apache.org/maven-plugin-2.0/