Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to use Bitbucket as a maven remote repository?

We are planning to use bitbucket as source code repository as well remote repository for our maven based projects. I have created a repository on bitbucket something like below:

https://bitbucket.org/mycompany/maven-repository

How can I push my company specific project jars into the above remote repository using the project specific pom.xml? Can you help me with a sample pom.xml? We would be pushing all company specific jars into the above remote repository to be used by other projects within the company as maven dependencies.

Here is what I was trying so far to push one sample project into the remote repo:

<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/xsd/maven-4.0.0.xsd">  <modelVersion>4.0.0</modelVersion> <groupId>com.mycompany</groupId> <artifactId>corporate-pom</artifactId> <version>1.0</version> <packaging>pom</packaging> <distributionManagement>     <repository>         <id>MyCompanyRepo</id>         <url>https://bitbucket.org/mycompany/maven-repository</url>     </repository> </distributionManagement> <build>     <pluginManagement>         <plugins>             <plugin>                 <groupId>org.apache.maven.plugins</groupId>                 <artifactId>maven-deploy-plugin</artifactId>                 <version>2.7</version>             </plugin>         </plugins>     </pluginManagement> </build> 

The above is a parent pom, which will be included by all the other projects within the company and I wanted to push this to the remote repo to be used by other company specific projects.

When I run mvn deploy command, this is the error I get:

C:\Cooler\Work\dev\Projects\mycompany\wal-common>mvn deploy [WARNING] [WARNING] Some problems were encountered while building the effective settings [WARNING] Unrecognised tag: 'snapshotPolicy' (position: START_TAG seen ...</layo ut>\n          <snapshotPolicy>... @203:27)  @ C:\Users\cooler\.m2\settings.xml, line 203, column 27 [WARNING] [INFO] Scanning for projects... [INFO] [INFO] ------------------------------------------------------------------------ [INFO] Building corporate-pom 1.0 [INFO] ------------------------------------------------------------------------ [INFO] [INFO] --- maven-install-plugin:2.3.1:install (default-install) @ corporate-pom --- [INFO] Installing C:\Cooler\Work\dev\Projects\mycompany\wal-common\pom.xml to C:\ Users\cooler\.m2\repository\com\mycompany\corporate-pom\1.0\corporat e-pom-1.0.pom [INFO] [INFO] --- maven-deploy-plugin:2.7:deploy (default-deploy) @ corporate-pom --- Uploading: https://bitbucket.org/mycompany/maven-repository/com/mycompany/corporate-   pom/1.0/corporate-pom-1.0.pom [INFO] ------------------------------------------------------------------------ [INFO] BUILD FAILURE [INFO] ------------------------------------------------------------------------ [INFO] Total time: 1.607s [INFO] Finished at: Tue Sep 17 14:33:01 MST 2013 [INFO] Final Memory: 7M/122M [INFO] ------------------------------------------------------------------------ [ERROR] Failed to execute goal org.apache.maven.plugins:maven-deploy-plugin:2.7: deploy (default-deploy) on project corporate-pom: Failed to deploy artifacts: Co uld not transfer artifact com.mycompany:corporate-pom:pom:1.0 from/ to CompanyREPO (https://bitbucket.org/mycompany/maven-repository): Connection to h ttp://:8080 refused: Connection refused: connect -> [Help 1] [ERROR] [ERROR] To see the full stack trace of the errors, re-run Maven with the -e swit ch. [ERROR] Re-run Maven using the -X switch to enable full debug logging. [ERROR] [ERROR] For more information about the errors and possible solutions, please rea d the following articles: [ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoExecutionE xception  

Thanks for your help.

like image 826
cooler Avatar asked Sep 17 '13 20:09

cooler


People also ask

How do I create a remote repository in Bitbucket?

Log in to Bitbucket, go to the repository section in the user dashboard, and click on the Create repository link. In the Create new repository page, specify your project name and repository name. After that, set the options for both Include a README and Include .

What is Maven remote repository?

A Maven Repository is a location, generally on a filesystem (either remote or local), where maven artifacts are stored and managed. Once artifacts have been stored in a maven repository, they are available for retrieval and inclusion in other maven projects.

How do I link to a Bitbucket repository?

Remote link can be found on top right side of the Source screen in your repository(https://bitbucket.org/<teamName_or_username>/<repo-name>/src). If you are using latest version of bitbucket cloud, there should be Clone button on right top.


2 Answers

You can try http://synergian.github.io/wagon-git/index.html it has instructions for bitbucket.

An alternative to using bitbucket is to use a dropbox folder for company. https://code.google.com/p/peter-lavalle/wiki/MavenOnDropBox Contains a very good step by step guide on how to do this.

like image 127
ams Avatar answered Sep 22 '22 18:09

ams


Install jars in a local maven repository.

Make a directory e.g. maven-repo/repository

cd into maven-repo

execute the following (replacing the arguments by the ones that are relevant to your jar):

mvn install:install-file -DgroupId=com.rapid_i -DartifactId=rapidminer -Dversion=5.3.006 -Dfile=/path/to/artifact/rapidminer.jar -Dpackaging=jar -DgeneratePom=true -DlocalRepositoryPath=./repository  -DcreateChecksum=true 

Share the folder to a BitBucket public repository.

Create a repository in your pom.xml pointing to you bitbucket folder.(you must use /raw/master in the path https://bitbucket.org/your-user-or-group/your_maven-repo/raw/master/ !!)

<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/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion>  <groupId>org.activeintel</groupId> <artifactId>rapidminer-proj</artifactId> <version>0.0.1</version>   <!-- Dependency to jar on Maven Repository on Git-BitBucket --> <dependencies>     <dependency>         <groupId>com.rapid_i</groupId>         <artifactId>rapidminer</artifactId>         <version>5.3.006</version>     </dependency> </dependencies>  <!-- Maven Repository on Git-BitBucket --> <repositories> <repository>     <id>neil_rubens-repository</id>     <url>https://bitbucket.org/your-user-or-group/your_maven-repo/raw/master/repository/</url> </repository> </repositories>  </project> 

Source: Hosting Maven Repository for third-party jars on Git (Bitbucket/Github)

like image 39
delkant Avatar answered Sep 21 '22 18:09

delkant