2

私の問題は、mvn tomcat:[re]deploy を実行http://localhost:8080/managerすると、Tomcat プラグインに指定した URL に関係なく、から HTTP リターンコード 403 を取得することです。

私は他の質問でそれを見つけました

<url>http://localhost:8080/manager/text</url>

私が目指すべきもの、

しかし、maven completley はこの xml-tag を無視します。

 <url>http://localhost:8080/nana/</url>

私が試したこと:

  • Tomcat を再起動すると、
  • URL とユーザー名/パスワードのスペル チェック、
  • Tomcat が実行されている、
  • manager-gui をロールとして追加すると、GUI を介してユーザー名「mavendeployer」でログインできます
  • mvn install は正常に動作します
  • プロジェクト全体で /manager の出現を検索しました - 何も見つかりませんでした (/nana が URL として配置されている場合)
  • <version>.pom の tomcat7-plugin からタグを削除し、自分のバージョンの tomcat でおかしい動作をするのは、私が使用したバージョンではないことを確認しようとしました

私はmaven 3.0.5、tomcat7、Mavenがプラグインに提供するバージョンを使用しています

私のTomcatユーザー:

    <user username="mavendeployer" 
          password="maven" 
          roles = "manager-script,admin-script" />

私のmavenサーバー設定:

<server>
    <id>localtomcat</id>
     <username>mavendeployer</username>
    <password>maven</password>
</server>

私のpom:(短くするために多くの依存関係を削除しました。ビルドは正常に機能します。mvn tomcat: [re] deployが失敗するだけです:

<?xml version="1.0" encoding="utf-8"?>
<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>net.test</groupId>
  <artifactId>testApp</artifactId>
  <packaging>war</packaging>
  <!-- <server SW version>-<REST interface version> -->
  <version>1.6.4-1.0.3</version>
  <name>Test</name>
  <url>http://maven.apache.org</url>
  <dependencies>
    <dependency>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-resources-plugin</artifactId>
        <version>2.4.3</version>
    </dependency>
      ...javax.servlet
      ...javax.servlet.jsp
      ...
         </dependencies>

  <build>
    <finalName>test</finalName>
    <plugins>
      <!-- Maven Tomcat Plugin -->
      <plugin>
        <groupId>org.apache.tomcat.maven</groupId>
        <artifactId>tomcat7-maven-plugin</artifactId>
        <configuration>
          <url>http://localhost:8080/nana/</url>
          <server>localtomcat</server>
          <path>/mim</path>
        </configuration>
      </plugin>

      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-compiler-plugin</artifactId>
        <version>2.0.2</version>
        <configuration>
          <source>1.7</source>
          <target>1.7</target>
        </configuration>
      </plugin>  
    </plugins>
  </build>
</project>

URL を /manager/text または manager/html に変更しても 403 問題が解決しないという質問が見つからないようです。

4

2 に答える 2

8

わかりました、ソリューションは非常にトリッキーでした! ターゲットは tomcat:[re]depoly ではなく、tomcat* 7 *:[re]deploy^^ です。

于 2013-07-16T08:42:31.547 に答える
2

以下は私にとってはうまくいきます:

My tomcat-users.xml- role 要素に注意してください:

<tomcat-users>
  <role rolename="manager-script"/>
  <user username="mavendeployer" password="maven" roles="manager-script"/>
</tomcat-users>

私のpom.xml

<build>
  <finalName>your_web_app_name</finalName>
  <pluginManagement>
    <plugins>
      <plugin>
        <groupId>org.apache.tomcat.maven</groupId>
        <artifactId>tomcat7-maven-plugin</artifactId>
        <version>2.1</version>
      </plugin>
    </plugins>
  </pluginManagement>
  <plugins>
    <plugin>
      <groupId>org.apache.tomcat.maven</groupId>
      <artifactId>tomcat7-maven-plugin</artifactId>
      <configuration>
        <server>localtomcat</server>
        <update>true</update>
        <url>http://localhost:8080/manager/text</url>
      </configuration>
    </plugin>
  </plugins>
</build>

あなたのMavensettings.xmlは私には問題ないようです。

それでも問題が解決しない場合はお知らせください。他の設定/構成を探します。

于 2013-07-16T08:03:55.753 に答える