2012-12-21 5 views
5

जब मैं मैवेन का उपयोग करके अपना युद्ध तैनात करता हूं, तो लक्ष्य युद्ध (सटीक वही) सर्वर पर दो बार अपलोड किया जा रहा है। क्या कोई इसे समझा सकता है?अपाचे टॉमकैट मेवेन प्लगइन दो बार WAR फ़ाइल अपलोड क्यों करता है?

मैं अपने मॉड्यूल पर इस का उपयोग कर रहा:

clean install org.apache.tomcat.maven:tomcat6-maven-plugin:2.0:redeploy 

लॉग से फ़ाइल

[INFO] --- maven-war-plugin:2.1.1:war (default-war) @ mobile-server --- 
[INFO] Packaging webapp 
[INFO] Assembling webapp [mobile-server] in [C:\develope\mobile\mobile-server\target\mobile-server] 
[INFO] Processing war project 
[INFO] Copying webapp resources [C:\develope\mobile\mobile-server\src\main\webapp] 
[INFO] Webapp assembled in [241 msecs] 
[INFO] Building war: C:\develope\mobile\mobile-server\target\mobile-server.war 
[INFO] 
[INFO] <<< tomcat6-maven-plugin:2.0:redeploy (default-cli) @ mobile-server <<< 
[INFO] 
[INFO] --- tomcat6-maven-plugin:2.0:redeploy (default-cli) @ mobile-server ---  
[INFO] Deploying war to http://myserver.eu/pra-mobile-server 
Uploading: http://myserver.eu/manager-test/deploy?path=%2Fmobile-server&update=true 
Uploaded: http://myserver.eu/manager-test/deploy?path=%2Fmobile-server&update=true (12678 KB at 49.3 KB/sec) 

Uploading: http://myserver.eu/manager-test/deploy?path=%2Fmobile-server&update=true 
Uploaded: http://myserver.eu/manager-test/deploy?path=%2Fmobile-server&update=true (12678 KB at 50.9 KB/sec) 

मेरा मुख्य pom.xml इस तरह दिखता है:

<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/maven-v4_0_0.xsd"> 

<modelVersion>4.0.0</modelVersion> 
<parent> 
    <groupId>eu.company.prj.pramobile</groupId> 
    <artifactId>mobile-parent</artifactId> 
    <relativePath>../mobile-parent/pom.xml</relativePath> 
    <version>1.0-SNAPSHOT</version> 
</parent> 

<artifactId>mobile-server</artifactId> 
<packaging>war</packaging> 
<name>mobile server</name> 

<properties> 
    <version.standard.taglibs>1.1.2</version.standard.taglibs> 
</properties> 


<repositories> 
     <repository> 
      <id>com.springsource.repository.libs-milestone</id> 
      <name>SpringSource Enterprise Bundle Repository - libs</name> 
      <url>http://repo.springsource.org/libs-milestone/</url> 
     </repository> 
</repositories> 

<dependencies> 
    <dependency> 
     <groupId>${project.groupId}</groupId> 
     <artifactId>mobile-test</artifactId> 
     <version>${project.version}</version> 
     <scope>test</scope> 
    </dependency> 
    <dependency> 
     <groupId>${project.groupId}</groupId> 
     <artifactId>mobile-common</artifactId> 
     <version>${project.version}</version> 
    </dependency> 


    <!-- Import Spring dependencies, these are either from community or versions 
     certified in WFK2 --> 
    <dependency> 
     <groupId>org.springframework</groupId> 
     <artifactId>spring-asm</artifactId> 
     <version>${version.spring}</version> 
    </dependency> 
    <dependency> 
     <groupId>org.springframework</groupId> 
     <artifactId>spring-aop</artifactId> 
     <version>${version.spring}</version> 
    </dependency> 
    <dependency> 
     <groupId>org.springframework.security</groupId> 
     <artifactId>spring-security-config</artifactId> 
     <version>${version.spring}</version> 
    </dependency> 
    <dependency> 
     <groupId>org.springframework</groupId> 
     <artifactId>spring-web</artifactId> 
     <version>${version.spring}</version> 
    </dependency> 
    <dependency> 
     <groupId>org.springframework</groupId> 
     <artifactId>spring-oxm</artifactId> 
     <version>${version.spring}</version> 
    </dependency> 
    <dependency> 
     <groupId>org.springframework</groupId> 
     <artifactId>spring-webmvc</artifactId> 
     <version>${version.spring}</version> 
    </dependency> 
    <dependency> 
     <groupId>org.springframework.security</groupId> 
     <artifactId>spring-security-web</artifactId> 
     <version>${version.spring}</version> 
    </dependency> 


    <dependency> 
     <groupId>commons-codec</groupId> 
     <artifactId>commons-codec</artifactId> 
     <version>1.7</version> 
    </dependency> 

    <dependency> 
     <groupId>javax.servlet</groupId> 
     <artifactId>jsp-api</artifactId> 
     <version>2.0</version> 
     <scope>provided</scope> 
    </dependency> 
    <dependency> 
     <groupId>commons-io</groupId> 
     <artifactId>commons-io</artifactId> 
     <version>2.4</version> 
    </dependency> 
    <dependency> 
     <groupId>commons-fileupload</groupId> 
     <artifactId>commons-fileupload</artifactId> 
     <version>1.2.2</version> 
    </dependency> 
    <dependency> 
     <groupId>javax.servlet</groupId> 
     <artifactId>servlet-api</artifactId> 
     <version>2.5</version> 
     <scope>provided</scope> 
    </dependency> 
    <dependency> 
     <groupId>javax.servlet</groupId> 
     <artifactId>jstl</artifactId> 
     <version>1.1.2</version> 
     <scope>provided</scope> 
    </dependency> 
    <dependency> 
     <groupId>taglibs</groupId> 
     <artifactId>standard</artifactId> 
     <version>1.1.2</version> 
     <scope>provided</scope> 
    </dependency> 
    <dependency> 
     <groupId>commons-httpclient</groupId> 
     <artifactId>commons-httpclient</artifactId> 
     <version>3.1</version> 
    </dependency> 
    <dependency> 
     <groupId>net.sf.ehcache</groupId> 
     <artifactId>ehcache</artifactId> 
     <version>1.6.1</version> 
    </dependency> 
    <dependency> 
     <groupId>org.springmodules</groupId> 
     <artifactId>spring-modules-cache</artifactId> 
     <version>0.8a</version> 
     <!-- Unfortunately design of spring cache module is not the best - we 
      need to exclude not necessary dependencies --> 
     <exclusions> 
      <exclusion> 
       <groupId>org.springframework</groupId> 
       <artifactId>spring</artifactId> 
      </exclusion> 
      <exclusion> 
       <groupId>gigaspaces</groupId> 
       <artifactId>gigaspaces-ce</artifactId> 
      </exclusion> 
      <exclusion> 
       <groupId>jini</groupId> 
       <artifactId>jsk-lib</artifactId> 
      </exclusion> 
      <exclusion> 
       <groupId>jini</groupId> 
       <artifactId>jsk-platform</artifactId> 
      </exclusion> 
      <exclusion> 
       <groupId>jini</groupId> 
       <artifactId>mahalo</artifactId> 
      </exclusion> 
      <exclusion> 
       <groupId>jini</groupId> 
       <artifactId>reggie</artifactId> 
      </exclusion> 
      <exclusion> 
       <groupId>jini</groupId> 
       <artifactId>start</artifactId> 
      </exclusion> 
      <exclusion> 
       <groupId>jini</groupId> 
       <artifactId>boot</artifactId> 
      </exclusion> 
      <exclusion> 
       <groupId>jini</groupId> 
       <artifactId>webster</artifactId> 
      </exclusion> 
      <exclusion> 
       <groupId>commons-attributes</groupId> 
       <artifactId>commons-attributes-api</artifactId> 
      </exclusion> 
      <exclusion> 
       <groupId>commons-attributes</groupId> 
       <artifactId>commons-attributes-compiler</artifactId> 
      </exclusion> 
      <exclusion> 
       <groupId>jboss</groupId> 
       <artifactId>javassist</artifactId> 
      </exclusion> 
      <exclusion> 
       <groupId>jboss</groupId> 
       <artifactId>jboss-cache</artifactId> 
      </exclusion> 
      <exclusion> 
       <groupId>jboss</groupId> 
       <artifactId>jboss-common</artifactId> 
      </exclusion> 
      <exclusion> 
       <groupId>jboss</groupId> 
       <artifactId>jboss-jmx</artifactId> 
      </exclusion> 
      <exclusion> 
       <groupId>jboss</groupId> 
       <artifactId>jboss-minimal</artifactId> 
      </exclusion> 
      <exclusion> 
       <groupId>jboss</groupId> 
       <artifactId>jboss-system</artifactId> 
      </exclusion> 
      <exclusion> 
       <groupId>jcs</groupId> 
       <artifactId>jcs</artifactId> 
      </exclusion> 
      <exclusion> 
       <groupId>jgroups</groupId> 
       <artifactId>jgroups-all</artifactId> 
      </exclusion> 
      <exclusion> 
       <groupId>geronimo-spec</groupId> 
       <artifactId>geronimo-spec-jta</artifactId> 
      </exclusion> 
      <exclusion> 
       <groupId>xpp3</groupId> 
       <artifactId>xpp3_min</artifactId> 
      </exclusion> 
      <exclusion> 
       <groupId>xjavadoc</groupId> 
       <artifactId>xjavadoc</artifactId> 
      </exclusion> 
      <exclusion> 
       <groupId>opensymphony</groupId> 
       <artifactId>oscache</artifactId> 
      </exclusion> 
      <exclusion> 
       <groupId>ehcache</groupId> 
       <artifactId>ehcache</artifactId> 
      </exclusion> 
     </exclusions> 
    </dependency> 
    <dependency> 
     <groupId>org.quartz-scheduler</groupId> 
     <artifactId>quartz</artifactId> 
     <version>${version.quartz}</version> 
    </dependency> 
    <dependency> 
     <groupId>javax.mail</groupId> 
     <artifactId>mail</artifactId> 
     <version>1.4.5</version> 
    </dependency> 
    <dependency> 
     <groupId>org.apache.commons</groupId> 
     <artifactId>commons-lang3</artifactId> 
     <version>3.1</version> 
    </dependency> 

    <!--mockito for test--> 
    <dependency> 
     <groupId>org.mockito</groupId> 
     <artifactId>mockito-all</artifactId> 
     <version>1.9.5</version> 
     <scope>test</scope> 
    </dependency> 

    <dependency> 
     <groupId>org.kubek2k</groupId> 
     <artifactId>springockito</artifactId> 
     <version>1.0.4</version> 
     <scope>test</scope> 
    </dependency> 

    <dependency> 
     <groupId>org.kubek2k</groupId> 
     <artifactId>springockito-annotations</artifactId> 
     <version>1.0.5</version> 
     <scope>test</scope> 
    </dependency> 

    <!--testing MVC controllers--> 
    <dependency> 
     <groupId>org.springframework</groupId> 
     <artifactId>spring-test-mvc</artifactId> 
     <version>1.0.0.M2</version> 
     <scope>test</scope> 
    </dependency> 
    <dependency> 
     <groupId>org.springframework</groupId> 
     <artifactId>spring-context</artifactId> 
     <version>3.1.0.RELEASE</version> 
    </dependency> 

</dependencies> 

<build> 

    <finalName>mobile-server</finalName> 

    <plugins> 
     <plugin> 
      <groupId>org.mortbay.jetty</groupId> 
      <artifactId>maven-jetty-plugin</artifactId> 
      <version>6.1.10</version> 
      <configuration> 
       <jettyEnvXml>${basedir}/src/test/resources/jetty-env.xml</jettyEnvXml> 
       <!-- Solves locked problem for JSP while jetty is running --> 
       <webDefaultXml>src/test/resources/webdefault.xml</webDefaultXml> 
       <stopKey>0</stopKey> 
       <stopPort>8001</stopPort> 
       <scanIntervalSeconds>5</scanIntervalSeconds> 
       <systemProperties> 
        <systemProperty> 
         <name>org.apache.commons.logging.Log</name> 
         <value>org.apache.commons.logging.impl.SimpleLog</value> 
        </systemProperty> 

        <systemProperty> 
         <name>log4j.configurationFile</name> 
         <value>file:${project.basedir}/src/main/resources/log4j.xml</value> 
        </systemProperty> 

       </systemProperties> 

      </configuration> 
      <dependencies> 
       <dependency> 
        <groupId>mysql</groupId> 
        <artifactId>mysql-connector-java</artifactId> 
        <version>5.1.9</version> 
       </dependency> 
      </dependencies> 
     </plugin> 
     <!-- Surefire plugin before 2.9 version is buggy --> 
     <plugin> 
      <artifactId>maven-surefire-plugin</artifactId> 
      <version>2.10</version> 
      <configuration> 
       <parallel>true</parallel> 
       <threadCount>10</threadCount> 
       <systemPropertyVariables> 
        <java.awt.headless>true</java.awt.headless> 
       </systemPropertyVariables> 
      </configuration> 
     </plugin> 

     <plugin> 
      <artifactId>maven-war-plugin</artifactId> 
      <version>2.1.1</version> 
      <!--to avoid maven error message--> 
      <configuration> 
       <packagingExcludes>WEB-INF/web.xml</packagingExcludes> 
      </configuration> 
     </plugin> 

     <!--import objects from schema generation--> 
     <plugin> 
      <groupId>org.codehaus.mojo</groupId> 
      <artifactId>jaxb2-maven-plugin</artifactId> 
      <version>1.5</version> 
      <executions> 
       <execution> 
        <goals> 
         <goal>xjc</goal> 
        </goals> 
       </execution> 
      </executions> 
      <configuration> 
       <encoding>UTF-8</encoding> 
       <extension>true</extension> 
       <packageName>eu.company.prj.pra.mobile.server.generated.place1</packageName> 
       <schemaDirectory>src/main/resources/META-INF/schema</schemaDirectory> 
       <outputDirectory>${basedir}/src/main/java/</outputDirectory> 
       <failOnNoSchemas>true</failOnNoSchemas> 
       <clearOutputDir>false</clearOutputDir> 
      </configuration> 
     </plugin> 

     <!-- mvn tomcat plugin alternative - run --> 
     <plugin> 
      <groupId>org.apache.tomcat.maven</groupId> 
      <artifactId>tomcat6-maven-plugin</artifactId> 
      <version>2.0</version> 
      <configuration>    
       <systemProperties>-Dmaven.tomcat.uriEncoding=UTF-8</systemProperties> 
       <url>${tomcat-maven-plugin.url}</url> 
       <username>${tomcat-maven-plugin.username}</username> 
       <password>${tomcat-maven-plugin.password}</password> 
      </configuration> 
     </plugin> 

     <!-- mvn tomcat plugin alternative - run --> 
     <!--<plugin>--> 
      <!--<groupId>org.codehaus.mojo</groupId>--> 
      <!--<artifactId>tomcat-maven-plugin</artifactId>--> 
      <!--<configuration>--> 
       <!--<contextFile>${basedir}/src/test/resources/tomcat-context.xml</contextFile>--> 
       <!--<url>${tomcat-maven-plugin.url}</url>--> 
       <!--<username>${tomcat-maven-plugin.username}</username>--> 
       <!--<password>${tomcat-maven-plugin.password}</password>--> 
      <!--</configuration>--> 
      <!--<dependencies>--> 
       <!--<dependency>--> 
        <!--<groupId>mysql</groupId>--> 
        <!--<artifactId>mysql-connector-java</artifactId>--> 
        <!--<version>5.1.9</version>--> 
       <!--</dependency>--> 
      <!--</dependencies>--> 
     <!--</plugin>--> 

    </plugins> 
</build> 

अद्यतन जनक पोम:

http://maven.apache.org/xsd/maven-4.0.0.xsd "> 4.0.0

<groupId>eu.company.prj.mobile</groupId> 
<artifactId>mobile-parent</artifactId> 
<version>1.0-SNAPSHOT</version> 
<packaging>pom</packaging> 
<name>mobile project parent</name> 

<properties> 
    <version.spring>3.1.1.RELEASE</version.spring> 
    <version.jackson>1.9.11</version.jackson> 
    <version.commons.logging>1.1.1</version.commons.logging> 
    <version.quartz>2.1.6</version.quartz> 
    <slf4j.version>1.5.8</slf4j.version> 
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> 
</properties> 

<build> 
    <plugins> 
     <!-- Force Java 6 --> 
     <plugin> 
      <groupId>org.apache.maven.plugins</groupId> 
      <artifactId>maven-compiler-plugin</artifactId> 
      <version>2.3.1</version> 
      <configuration> 
       <encoding>${project.build.sourceEncoding}</encoding> 
       <source>1.6</source> 
       <target>1.6</target> 
      </configuration> 
     </plugin> 
    </plugins> 
</build> 
<profiles> 
     just properties with u/p ... 
</profiles> 

किसी भी संकेत के लिए धन्यवाद।

+0

अपनी जेटी प्लगइन को हटाने का प्रयास करें और फिर से निष्पादित करें, यह सुनिश्चित करने के लिए कि जेट्टी प्लगइन अपराधी नहीं है। –

+0

@SajanChandran एक कोशिश के लिए धन्यवाद, लेकिन कोई बदलाव नहीं है – Cabot

+0

अपाचे में इस बारे में कोई समस्या है (मुझे लगता है कि @ कैबोट?): [MTOMCAT-195] (https://issues.apache.org/ जिरा/ब्राउज/एमटीओएमसीएटी -195) हालांकि कोई स्पष्टीकरण नहीं है। – peron

उत्तर

0

इसे इंस्टॉल करें और इंस्टॉल लक्ष्य के बिना एमवीएन cmd लाइन चलाएं।

0

हाल ही में, मुझे एक परीक्षण सर्वर पर अपने युद्ध के अपलोड के दौरान एक ही समस्या का सामना करना पड़ा। मैंने बिना किसी सफलता के इंटरनेट पर इस प्रश्न का उत्तर खोजने के कई प्रयास किए। आकस्मिक रूप से, मुझे अपने मामले में हमारी समस्या मिली और मैं इसे यहां साझा करता हूं क्योंकि शायद यह किसी की मदद कर सकता है (लेकिन, मुझे यकीन नहीं है कि यह आपका मामला है)।

तो मेरे मामले में, युद्ध के दोहरे अपलोड के कारण मैंने बंदरगाहों को अग्रेषित कर दिया था। टोमकैट आमतौर पर 8080 बंदरगाह पर काम करता है। इसे 80 पोर्ट पर काम करने के लिए मजबूर करने के लिए मैंने अपने सर्वर को कॉन्फ़िगर किया (iptables का उपयोग करके) इस तरह से यह 80 से 8080 पोर्ट से अनुरोधों को आगे बढ़ाता है। टोमकैट मेवेन प्लगइन कॉन्फ़िगरेशन के लिए मैंने बस 8080 पोर्ट निर्दिष्ट किए बिना आईपी द्वारा अपलोड किया था। यह दो बार युद्ध अपलोड करने के लिए मेवेन प्लगइन का कारण बनता है (पहला अनुरोध एक पुनर्निर्देशन था, जबकि दूसरा वास्तविक अपलोड था)।

प्लगइन कॉन्फ़िगरेशन में पोर्ट को बस 8080 में बदलकर मेरी समस्या हल हो गई।

संबंधित मुद्दे