GithubHelp home page GithubHelp logo

Comments (5)

stromnet avatar stromnet commented on August 27, 2024

After working with this for a day, I think "open" versions is probably not what I want, because I'd like stable releases.

But how about other projects (i.e. appX) depending on my libs (say libY, having version 1.2-SNAPSHOT)? During lib release, it would create 1.2.0
For "stable" code I just point appX to depend on libY 1.2.0, and all is good.

During development though, I'd want to use 1.2-SNAPSHOT since I'm doing work on both library and app. I would like to avoid having to change appX pom from 1.2.0 to 1.2-SNAPSHOT back and forth.
And I would also forget to change back to 1.2.1 after I released libY 1.2.1.. Or does the plugin manage this automatically somehow?

Any hints on how you use this in your environment would be refreshing, now I'm quite stuck.. :)

from multi-module-maven-release-plugin.

danielflower avatar danielflower commented on August 27, 2024

So appX and libY are in different git repos? Or at least not in the same Maven reactor as each other?

I'm not sure there is a clean way to handle this if you also want appx to use a snapshot version of libY sometimes. You just have to manually switch between them. If they are completely separate projects though would you really have a snapshot dependency that often? Well, the probably makes sense in many cases, but the plugin wasn't really designed to handle that. I'm not sure what to do about that.

Of course if appX and libY are part of the same maven reactor in the same git repo then you just always point at the current snapshot of libY and it will just work but I presume this is not what you meant.

The above two cases are how I use this plugin normally.

from multi-module-maven-release-plugin.

stromnet avatar stromnet commented on August 27, 2024

Precisely, appX is in a standalone repo, so there is no way for maven in appX to know latest version of libY, besides possibly looking in an actual repository.

Would something like this make sense? When building appX, which has a dep on libY 1.2-SNAPSHOT, the plugin would look in the configured (Maven) repos for latest 1.2.x of libY and use that as the dependency. This way a release of appX would never have a snapshot dep. However, there is always a chance that libX 1.2.X was older than 1.2-SNAPSHOT because I forgot to release libX first.. So not really solid..

from multi-module-maven-release-plugin.

stromnet avatar stromnet commented on August 27, 2024

I've ended up throwing out the BOM's, and use static versions when referencing a lib in libY from appX. Seems most stable and makes most sense.

May look at using the versions-maven-plugin (http://www.mojohaus.org/versions-maven-plugin/) to bump dependency versions.

As this was not really an issue with the software but more of a call for guidance, I'm closing.

from multi-module-maven-release-plugin.

danielflower avatar danielflower commented on August 27, 2024

Thanks for the update.

from multi-module-maven-release-plugin.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.