Frequently Asked Questions
- I get an Unsupported Protocol Error when deploying a 3rd party jar. What should I do?
- I don't want to deploy one of the artifacts in my multi-module build. Can I skip deployment?
- What does the message "The packaging for this project did not assign a file to the build artifact" mean when I run
deploy:deploy
?
- I get an Unsupported Protocol Error when deploying a 3rd party jar. What should I do?
-
If you are using the
deploy:deploy-file
goal and encounter this error:"Error deploying artifact: Unsupported Protocol: 'ftp': Cannot find wagon which supports the requested protocol: ftp"
Then you need to place the appropriate wagon provider in your
%M2_HOME%/lib
. 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.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
<extension>
inside the current directory.If the error description is something like this:
"Error deploying artifact: Unsupported Protocol: 'ftp': Cannot find wagon which supports the requested protocol: ftp org/apache/commons/net/ftp/FTP"
Then you need to place the commons-net jar in
%M2_HOME%/lib
. - I don't want to deploy one of the artifacts in my multi-module build. Can I skip deployment?
-
Yes, you can skip deployment of individual modules by configuring the Deploy Plugin as follows:
<plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-deploy-plugin</artifactId> <version>X.Y</version> <configuration> <skip>true</skip> </configuration> </plugin>
- What does the message "The packaging for this project did not assign a file to the build artifact" mean when I run
deploy:deploy
? -
During the packaging-phase all gathered and placed in context. With this mechanism Maven can ensure that the
maven-install-plugin
andmaven-deploy-plugin
are copying/uploading the same set of files. So when you only executedeploy:deploy
, then there are no files put in the context and there is nothing to deploy.