Hi all,
I have very little experience in using bamboo and really hope to get some hints on the question I am facing.
I have one system which splits into two respositories in stash, let's say project A and B and B requires the jar/classes built from project A to complete it build process. In project B pom.xml, it states the dependency
<dependency>
<groupId>com.project.A</groupId>
<artifactId>ProjectA</artifactId>
<version>1.0.0-SNAPSHOT</version>
.....
and when running maven on project A, we need to run "clean install" instead of "clean package" such that project B can access the project A binary.
I found that it makes our build not easy to manage and I think there should be other way that Project A produces jar/classes binaryin one respostory and project B can get this binary into its build process. But I still cannot find out a way in bamboo how to achieve this purpose.
Can some of you share your experience in such build process scenario ?
I look at some artices in web and still cannot get it work in bamboo.
Do I need to remove the dependency in project B and direct reference to the jar in build process ?
If any of you can show me the way, I will be very appreciated your help.
Please kindly help
Thanks fo ryour kind attention,
Ray
Hi Ray,
I'm not sure if I understood it correctly but, have you tried to make the jars produced by the Proj A available as artifacts and then download them during the Proj B build process?
Another thing that you could try is to create a local maven repository and add the jar files produced by Proj A there using a solution described in the following StackOverflow thread:
Does that make any sense to your use case?
Thank you.
best,
Gabriel Ribeiro
Hi Gabriel,
Really thanks for your reply, your understanding is correct, actually, I know how to share one project artifacts to another project, but within the same repository. I am not really sure if this principle can be applied to two separate repository artifact sharing in build process.
I have also explored your suggestion to use a local maven repository, is it an approach that create a local (or temporary) repository with maven pom instructions, then one project "clean install" its package into the local/temporary repository and another project tries to reference the local/temporary repository installed artifacts in build process.
Really appreciate you can help me on this topic
Many thanks,
Ray
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi Gabriel,
For sharing artifact from another repository, how the pom.xml be referening the artifact at runtime ?
Would you share me your idea ?
Many thanks,
Ray
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi Rey,
I think this solution would be the best approach but, you can reference your jar file directly like this:
<dependency>
<groupId>com.sample</groupId>
<artifactId>sample</artifactId>
<version>1.0</version>
<scope>system</scope>
<systemPath>${project.basedir}/src/main/resources/yourJar.jar</systemPath>
</dependency>
thanks
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Online forums and learning are now in one easy-to-use experience.
By continuing, you accept the updated Community Terms of Use and acknowledge the Privacy Policy. Your public name, photo, and achievements may be publicly visible and available in search engines.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.