首页 文章

mvn tomcat的默认服务器:deploy?

提问于
浏览
0

我正试图用 mvn tomcat:deploy 部署一场战争,我得到了

无法在项目navigator-native上执行目标org.codehaus.mojo:tomcat-maven-plugin:1.1:deploy(default-cli):无法调用Tomcat管理器:服务器返回HTTP响应代码:401为URL:... //本地主机:8080 /经理/部署? ...

我已经将角色添加到tomcat-users.xml:

<role rolename="manager"/>
<role rolename="admin"/>
<user username="admin" password="password" roles="admin,manager"/>

但是不想修改项目的POM.xml,那么插件使用的默认服务器是什么?我试过添加

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

但它不起作用

2 回答

  • 1

    默认网址为 http://localhost:8080/managerTomcat 6 maven plugin docs . 不确定tomcat 7是否相同 .

    对于管理员凭据,您将服务器块添加到 ${user.home}/.m2/settings.xml 文件 . 然后,您需要通过在Tomcat插件配置或命令行中指定 <server> 元素来定义服务器ID:

    mvn tomcat:deploy -Dmaven.tomcat.server=localhost <otherPropertiesHere>

    以上假定服务器ID是“localhost”,如原始问题所示 .

  • 1

    您引用的ID是插件配置中的ID,而不是实际的服务器,如果您不想修改pom的项目,请在settings.xml文件中创建配置文件或在命令行中传递配置:

    mvn tomcat:deploy -Dmaven.tomcat.url=http://localhost/manager ,如果重新部署,也要确保设置 - Dmaven.tomcat.update=true

相关问题