当密码 空白时,我能够 成功 通过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>
答案 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/