<?xml version="1.0" encoding="UTF-8"?>

<!--
Licensed to the Apache Software Foundation (ASF) under one
or more contributor license agreements.  See the NOTICE file
distributed with this work for additional information
regarding copyright ownership.  The ASF licenses this file
to you under the Apache License, Version 2.0 (the
"License"); you may not use this file except in compliance
with the License.  You may obtain a copy of the License at

  http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing,
software distributed under the License is distributed on an
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
KIND, either express or implied.  See the License for the
specific language governing permissions and limitations
under the License.
-->


<faqs xmlns="http://maven.apache.org/FML/1.0.1"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/FML/1.0.1 http://maven.apache.org/xsd/fml-1.0.1.xsd"
  id="FAQ" title="Frequently Asked Questions">
 <part id="General">
   <faq id="question">
     <question>I get an Unsupported Protocol Error when deploying a 3rd party jar. What should I do?</question>
     <answer>
       <p>
         If you are using the <code>deploy:deploy-file</code> goal and encounter
         this error:
       </p>
       <p>
         <i>"Error deploying artifact: Unsupported Protocol: 'ftp': Cannot find
         wagon which supports the requested protocol: ftp"</i>
       </p>
       <p>
         Then you need to place the appropriate wagon provider in your
         <code>%M2_HOME%/lib</code>. In this case the provider needed is ftp,
         so we have to place the wagon-ftp jar in the lib directory of your
         Maven 2 installation.
       </p>
       <p>
         As an alternative to placing the wagon provider into the Maven distribution, you can also create a dummy
         POM that declares the required wagon as an <code>&lt;extension&gt;</code> inside the current directory.
       </p>
       <p>
         If the error description is something like this:
       </p>
       <p>
         <i>"Error deploying artifact: Unsupported Protocol: 'ftp': Cannot find
         wagon which supports the requested protocol: ftp
         org/apache/commons/net/ftp/FTP"</i>
       </p>
       <p>
         Then you need to place the commons-net jar in
         <code>%M2_HOME%/lib</code>.
       </p>
     </answer>
   </faq>
     <faq id="skip">
       <question>I don't want to deploy one of the artifacts in my multi-module build.  Can I skip deployment?</question>
       <answer>
         <p>
           Yes, you can skip deployment of individual modules by configuring the Deploy Plugin as follows:
         </p>
         <source>
<![CDATA[<plugin>
  <groupId>org.apache.maven.plugins</groupId>
  <artifactId>maven-deploy-plugin</artifactId>
  <version>X.Y</version>
  <configuration>
    <skip>true</skip>
  </configuration>
</plugin>]]></source>
       </answer>
     </faq>
     <faq id="deploy_deploy">
       <question>What does the message "The packaging for this project did not assign a file to the build artifact" mean when I run <code>deploy:deploy</code>?</question>
       <answer>
         <p>
         During the packaging-phase all gathered and placed in context. 
         With this mechanism Maven can ensure that the <code>maven-install-plugin</code> and <code>maven-deploy-plugin</code> are copying/uploading the same set of files.
         So when you only execute <code>deploy:deploy</code>, then there are no files put in the context and there is nothing to deploy.
         </p> 
       </answer>
     </faq>
 </part>
</faqs>
