Comments (5)
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.
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.
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.
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.
Thanks for the update.
from multi-module-maven-release-plugin.
Related Issues (20)
- Unable to release using github actions. HOT 1
- Test cases have external dependency on M2_HOME environment variable being set
- Use latest version from commit history instead latest greatest for unchanged modules HOT 3
- Use Maven Wrapper HOT 4
- Add option to release with untracked files HOT 3
- HTTPS authentication does not work similar to that of the SCM plugin
- The releaser:release goal does update the version although NoChangesAction is set to ReleaseNone
- Azure DevOps needs separate documentation
- Need documentation or mechanism for re-building a release tag HOT 1
- how to use ${revision} of flatten-maven-plugin together HOT 2
- Howto create javadoc and sources jars wirh the release HOT 1
- Question: Precommit hook for tag creation fails but build continues?
- Aggregator and module POMs at root folder
- Git SSH authentication failing HOT 2
- [deploy] [3.6.1] Cannot release project with submodules with dependency HOT 5
- releases module with fixed dependency version HOT 3
- Version properties and maven-assembly-plugin HOT 6
- Add new versionsReportFormat to generate properties file HOT 1
- Jenkinsfile HOT 2
- Local Plugin dependency not resolved when using -Snapshot HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from multi-module-maven-release-plugin.