2016-07-25 33 views
0

Ich verwende das Appium-Testautomatisierungs-Framework und möchte es auf AWS Device Farm hochladen. Ich habe die Dateien pom.xml und zip.xml aktualisiert. Wenn ich den Befehl 'mvn clean package --DskipTests = true' ausführe, erhalte ich den folgenden Fehler.Kann keine JAR-Datei zum Hochladen auf AWS-Gerätefarm erstellen

[INFO] Scanning for projects... 
[INFO] 
[INFO] ------------------------------------------------------------------------ 
[INFO] Building 1 1.0-SNAPSHOT 
[INFO] ------------------------------------------------------------------------ 
[INFO] ------------------------------------------------------------------------ 
[INFO] BUILD FAILURE 
[INFO] ------------------------------------------------------------------------ 
[INFO] Total time: 0.109 s 
[INFO] Finished at: 2016-07-25T14:54:43+05:30 
[INFO] Final Memory: 7M/77M 
[INFO] ------------------------------------------------------------------------ 
[ERROR] Unknown lifecycle phase "?-DskipTests=true". You must specify a valid li 
fecycle phase or a goal in the format <plugin-prefix>:<goal> or <plugin-group-id 
>:<plugin-artifact-id>[:<plugin-version>]:<goal>. Available lifecycle phases are 
: validate, initialize, generate-sources, process-sources, generate-resources, p 
rocess-resources, compile, process-classes, generate-test-sources, process-test- 
sources, generate-test-resources, process-test-resources, test-compile, process- 
test-classes, test, prepare-package, package, pre-integration-test, integration- 
test, post-integration-test, verify, install, deploy, pre-clean, clean, post-cle 
an, pre-site, site, post-site, site-deploy. -> [Help 1] 

Kann mir bitte jemand eine Lösung auf diesem ?? Ich war früher immer mvn nicht als interner oder externer Befehl erkannt wird, so dass ich installiert Maven separat .. Bitte helfen

+0

hmmmmm in meven, wie ich mich erinnere Sie müssen Befehl am letzten Platz eingeben, so dass Ihre Flagge bevore Befehl gehen sollte, ist es –

+0

Ich habe Sie nicht .. – girish

+0

_Sie müssen eine gültige li fecycle Phase oder ein Ziel im format_ Bedeutet: ** - DskipTests = true ** ist nein t ein GOAL (Meven Befehl) für Maven Es ist eine FLAGGE und Sie sollten FLAG vor Ziel setzen :) –

Antwort

1

Wenn Sie eingeben:

mvn -h 

Sie werden die Hilfeseite erhalten für Maven gedruckt in die Konsole. Es werden sehen, Sie sagt es:

usage: mvn [options] [<goal(s)>] [<phase(s)>] 

So einfach diese versuchen:

mvn -DskipTests package 

Das heißt, vergessen Sie die "= true" Bit.

WARNUNG: Vorsicht, wo Sie kopieren und einfügen von. Ich kopierte aus einer README.md-Datei von Github und es verlor mich eine Stunde. Es gibt einige Tippfehler, die so subtil sind, dass sie kaum zu sehen sind.

Dieses mit einem Minus/Bindestrich "-" Symbol (ASCII-Code 45), funktioniert:

mvn -DskipTests package 

Dieser, mit einem Bindestrich "-" (ASCII-Code 150), wird nicht funktionieren:

mvn –DskipTests package 

Also, wenn Sie schon in der Kommandozeile einfügen und Sie halten die Unbekannte Phase des Lebenszyklus immer „-DskipTests“ Fehler unabhängig davon, was Sie versuchen, es einfach in geben, dass Sie das minus verwenden, um/Bindestrich.

0

mvn plugin-Präfix: Ziel oder Plugin-group-ID: Plugin-Artefakt-ID: Plugin-Version: Ziel

Die oben sollte ich Ihre pom.xml Datei zB zur Verfügung:

-------------- 
    <groupId>com.aws.appium</groupId> 
     <artifactId>appium-android-test</artifactId> 
     <version>1.0-SNAPSHOT</version> 

------------- 

      <plugin> 
        <groupId>org.apache.maven.plugins</groupId> 
        <artifactId>maven-jar-plugin</artifactId> 
        <version>2.6</version> 
        <executions> 
         <execution> 
          <goals> 
           <goal>test-jar</goal> 
          </goals> 
         </execution> 
        </executions> 
       </plugin>