You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@maven.apache.org by Basin Ilya <ba...@gmail.com> on 2018/01/23 13:52:10 UTC

mvn site:deploy SCM: No such provider: 'cvs'

Hi list.
I'm trying to make work the deploy maven site example from http://maven.apache.org/wagon/wagon-providers/wagon-scm/usage.html

I have an empty java project. First I do `mvn site:site` and a site is created in target/
Then I do `mvn site:deploy` and it fails with "No such provider". It doesn't seem to reach the point where it calls the cvs binary.


Here's my pom.xml :

	<?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/maven-v4_0_0.xsd">
		<modelVersion>4.0.0</modelVersion>
	
		<groupId>foo</groupId>
		<artifactId>bar</artifactId>
		<version>0.1-SNAPSHOT</version>
		<name>bar</name>
	
		<build>
			<extensions>
				<extension>
					<groupId>org.apache.maven.wagon</groupId>
					<artifactId>wagon-scm</artifactId>
					<version>3.0.0</version>
				</extension>
				<extension>
					<groupId>org.apache.maven.scm</groupId>
					<artifactId>maven-scm-manager-plexus</artifactId>
					<version>1.9.5</version>
				</extension>
				<extension>
					<groupId>org.apache.maven.scm</groupId>
					<artifactId>maven-scm-provider-cvsexe</artifactId>
					<version>1.9.5</version>
				</extension>
			</extensions>
		</build>
	
		<distributionManagement>
			<site>
				<id>my.cvs.server</id>
				<url>scm:cvs:local:/cygdrive/d/1/cvs_repository:myprojects</url>
			</site>
		</distributionManagement>
	</project>

Here're the commands to create a local cvs repo:

    mkdir cvs_repository
    export CVSROOT=:local:`pwd`/cvs_repository
    cvs init

    mkdir empty_dir
    cd empty_dir
    cvs import -mroot myprojects vtag rtag
    cd ..

    mkdir work_dir
    cd work_dir
    cvs co myprojects
    cd myprojects

    touch a b c
    cvs add a b c ; echo $?

    cvs commit -mabc


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
For additional commands, e-mail: users-help@maven.apache.org


Re: mvn site:deploy SCM: No such provider: 'cvs'

Posted by Basin Ilya <ba...@gmail.com>.
Thanks Hervé. My ultimate goal was to deploy maven artifacts to a private github repo, because we already have a paid github account. I can see there're too many unsolved
problems with this. Here's a pom that almost does it:

	<?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/maven-v4_0_0.xsd">
		<modelVersion>4.0.0</modelVersion>
	
	<!--
	`mvn deploy` to git
	This pom does not work! It creates artifact files in a repository root.

	problems:
	v - <extensions> doesn't work with maven 3. Have to use dependencies in pluginManagement.
	v - eclipse-jgit 3x requires bash in PATH. eclipse-jgit 4x is incompatible with maven-scm-provider-jgit
	v - jgit always prints "up-to-date" and never commits anything. gitexe works.
	v - gitexe does not support cygwin (problem converting between windows paths and cygwin paths)
	x - gitexe can only deploy a tree to a repository root. It produces invalid git commands when trying to checkout a subdirectory.
		This is fine for site:deploy, but not suitable for artifact deploy.

	 -->
	
		<groupId>foo</groupId>
		<artifactId>bar</artifactId>
		<version>0.1-SNAPSHOT</version>
		<name>bar</name>
	
		<build>
	
			<pluginManagement>
				<plugins>
					<plugin>
						<groupId>org.apache.maven.plugins</groupId>
						<artifactId>maven-deploy-plugin</artifactId>
						<dependencies>
							<dependency>
								<groupId>org.apache.maven.wagon</groupId>
								<artifactId>wagon-scm</artifactId>
								<version>3.0.0</version>
							</dependency>
	
							<dependency>
								<groupId>org.apache.maven.scm</groupId>
								<artifactId>maven-scm-manager-plexus</artifactId>
								<version>1.9.5</version>
							</dependency>
	
							<dependency>
								<groupId>org.apache.maven.scm</groupId>
								<artifactId>maven-scm-provider-gitexe</artifactId>
								<version>1.9.5</version>
							</dependency>
						</dependencies>
					</plugin>
				</plugins>
			</pluginManagement>
		</build>
	
		<distributionManagement>
			<snapshotRepository>
				<id>xxx</id>
				<url>scm:git:/.snapshots/persist/builds/scm/repo.git</url>
				<!-- <url>file:///.snapshots/persist/builds/scm/localrepo</url> -->
			</snapshotRepository>
			<site>
				<id>my.cvs.server</id>
				<url>scm:jgit:/.snapshots/persist/builds/scm/repo.git</url>
				<!-- <url>scm:git:/.snapshots/persist/builds/scm/repo.git</url> <url>scm:cvs_native:local:/cygdrive/d/1/cvs_repository:myprojects</url> -->
			</site>
		</distributionManagement>
	</project>




On 24.01.2018 9:47, Hervé BOUTEMY wrote:
> Hi,
> 
> I didn't really tried, but please read carefully the 2 notes in the page:
>     Prefer maven-scm-publish-plugin to publish your site to SCM
> 
>     Note for Maven 3 users: The site plugin behaves differently, require these 
> be added as dependencies instead of extensions. See Adding a Protocol to 
> Deploy the Site.
> 
> and even the list of limitations that is explained just before.
> 
> I'm not sure this documentation should remain so visible:  maven-scm-publish-
> plugin is really the solution to the use case
> 
> Regards,
> 
> Hervé
> 
> Le mardi 23 janvier 2018, 14:52:10 CET Basin Ilya a écrit :
>> Hi list.
>> I'm trying to make work the deploy maven site example from
>> http://maven.apache.org/wagon/wagon-providers/wagon-scm/usage.html
>>
>> I have an empty java project. First I do `mvn site:site` and a site is
>> created in target/ Then I do `mvn site:deploy` and it fails with "No such
>> provider". It doesn't seem to reach the point where it calls the cvs
>> binary.
>>
>>
>> Here's my pom.xml :
>>
>> 	<?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/maven-v4_0_0.xsd">
>> <modelVersion>4.0.0</modelVersion>
>>
>> 		<groupId>foo</groupId>
>> 		<artifactId>bar</artifactId>
>> 		<version>0.1-SNAPSHOT</version>
>> 		<name>bar</name>
>>
>> 		<build>
>> 			<extensions>
>> 				<extension>
>> 					<groupId>org.apache.maven.wagon</groupId>
>> 					<artifactId>wagon-scm</artifactId>
>> 					<version>3.0.0</version>
>> 				</extension>
>> 				<extension>
>> 					<groupId>org.apache.maven.scm</groupId>
>> 					<artifactId>maven-scm-manager-plexus</artifactId>
>> 					<version>1.9.5</version>
>> 				</extension>
>> 				<extension>
>> 					<groupId>org.apache.maven.scm</groupId>
>> 					<artifactId>maven-scm-provider-cvsexe</artifactId>
>> 					<version>1.9.5</version>
>> 				</extension>
>> 			</extensions>
>> 		</build>
>>
>> 		<distributionManagement>
>> 			<site>
>> 				<id>my.cvs.server</id>
>> 				<url>scm:cvs:local:/cygdrive/d/1/cvs_repository:myprojects</url>
>> 			</site>
>> 		</distributionManagement>
>> 	</project>
>>
>> Here're the commands to create a local cvs repo:
>>
>>     mkdir cvs_repository
>>     export CVSROOT=:local:`pwd`/cvs_repository
>>     cvs init
>>
>>     mkdir empty_dir
>>     cd empty_dir
>>     cvs import -mroot myprojects vtag rtag
>>     cd ..
>>
>>     mkdir work_dir
>>     cd work_dir
>>     cvs co myprojects
>>     cd myprojects
>>
>>     touch a b c
>>     cvs add a b c ; echo $?
>>
>>     cvs commit -mabc
>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
>> For additional commands, e-mail: users-help@maven.apache.org
> 
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
> For additional commands, e-mail: users-help@maven.apache.org
> 

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
For additional commands, e-mail: users-help@maven.apache.org


Re: mvn site:deploy SCM: No such provider: 'cvs'

Posted by Hervé BOUTEMY <he...@free.fr>.
Hi,

I didn't really tried, but please read carefully the 2 notes in the page:
    Prefer maven-scm-publish-plugin to publish your site to SCM

    Note for Maven 3 users: The site plugin behaves differently, require these 
be added as dependencies instead of extensions. See Adding a Protocol to 
Deploy the Site.

and even the list of limitations that is explained just before.

I'm not sure this documentation should remain so visible:  maven-scm-publish-
plugin is really the solution to the use case

Regards,

Hervé

Le mardi 23 janvier 2018, 14:52:10 CET Basin Ilya a écrit :
> Hi list.
> I'm trying to make work the deploy maven site example from
> http://maven.apache.org/wagon/wagon-providers/wagon-scm/usage.html
> 
> I have an empty java project. First I do `mvn site:site` and a site is
> created in target/ Then I do `mvn site:deploy` and it fails with "No such
> provider". It doesn't seem to reach the point where it calls the cvs
> binary.
> 
> 
> Here's my pom.xml :
> 
> 	<?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/maven-v4_0_0.xsd">
> <modelVersion>4.0.0</modelVersion>
> 
> 		<groupId>foo</groupId>
> 		<artifactId>bar</artifactId>
> 		<version>0.1-SNAPSHOT</version>
> 		<name>bar</name>
> 
> 		<build>
> 			<extensions>
> 				<extension>
> 					<groupId>org.apache.maven.wagon</groupId>
> 					<artifactId>wagon-scm</artifactId>
> 					<version>3.0.0</version>
> 				</extension>
> 				<extension>
> 					<groupId>org.apache.maven.scm</groupId>
> 					<artifactId>maven-scm-manager-plexus</artifactId>
> 					<version>1.9.5</version>
> 				</extension>
> 				<extension>
> 					<groupId>org.apache.maven.scm</groupId>
> 					<artifactId>maven-scm-provider-cvsexe</artifactId>
> 					<version>1.9.5</version>
> 				</extension>
> 			</extensions>
> 		</build>
> 
> 		<distributionManagement>
> 			<site>
> 				<id>my.cvs.server</id>
> 				<url>scm:cvs:local:/cygdrive/d/1/cvs_repository:myprojects</url>
> 			</site>
> 		</distributionManagement>
> 	</project>
> 
> Here're the commands to create a local cvs repo:
> 
>     mkdir cvs_repository
>     export CVSROOT=:local:`pwd`/cvs_repository
>     cvs init
> 
>     mkdir empty_dir
>     cd empty_dir
>     cvs import -mroot myprojects vtag rtag
>     cd ..
> 
>     mkdir work_dir
>     cd work_dir
>     cvs co myprojects
>     cd myprojects
> 
>     touch a b c
>     cvs add a b c ; echo $?
> 
>     cvs commit -mabc
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
> For additional commands, e-mail: users-help@maven.apache.org



---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
For additional commands, e-mail: users-help@maven.apache.org