You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
migrated from Bugzilla #477649
status ASSIGNED severity enhancement in component build for 9.3.x
Reported in version 9.3.0 on platform All
Assigned to: Joakim Erdfelt
On 2015-09-17 02:04:43 -0400, Jan Bartel wrote:
Some modules that have 3rd party dependencies can have a lot of transitive dependencies. Maintaining the .mod file becomes tedious and error-prone.
It would be ideal if there was some tooling to support automatic updating of a .mod file's [lib] section based on the (non-jetty) dependencies expressed in the pom.
On 2015-09-17 10:19:27 -0400, Joakim Erdfelt wrote:
Are we talking about the jetty-distribution mods?
Or something else (3rd party)?
Would a :mod-gen goal on jetty-maven-plugin be appropriate?
Or should a new jetty-module-maven-plugin be created?
On 2015-09-17 20:15:17 -0400, Greg Wilkins wrote:
Joakim,
I think both Jetty and 3rd party modules are valid use-cases.
The situation that inspired this is our session managers, which we currently provide infispan and gcloud implenations of - so they are jetty modules, but with lots of 3rd party dependencies that need to be brought in from the maven repo.
Manually maintaining those modules [files] will be painful, so the main use-case it to generate them perhaps from the output of the maven dependency plugin?
I have no idea if this requires another maven plugin or if it can be done via some other maven magic.
This is low priority as the current modules can be manually maintained for a while.
On 2015-09-17 20:47:32 -0400, Joakim Erdfelt wrote:
Its an interesting idea.
The roles will have to be changed a little bit, as the "output" directory of the libraries will now be defined in the pom.xml as well.
Meaning, if you have the infiniband project, should it put itself into ${jetty.base}/lib/infiniband?
An approach I would probably take is the following ...
Use the maven-dependency-plugin:copy-dependencies
With the useRepositoryLayout set to true.
And the ${jetty.base}/lib/repo/ as the common reference directory.
Then the [files] sections would have fully complete references to what they need.
This would also be a good thing when more than 1 module share a common artifact.
However, this also means that the old concern about library conflict resolution is going to become more relevant.
We should either revisit the use of Eclipse Aether for our library management, or punt on this till Java 9 / JPMS and its solution.
On 2015-09-17 20:49:43 -0400, Jan Bartel wrote:
(In reply to Joakim Erdfelt from comment # 1)
Are we talking about the jetty-distribution mods?
Or something else (3rd party)?
One of our new session manager impls has 1 direct dependency, but it has 32 transitive compile scope dependencies! Hence my concern about trying to keep a .mod file manually up-to-date :)
Would a :mod-gen goal on jetty-maven-plugin be appropriate?
No, I think ideally the jetty-maven-plugin should purely be for end-users to use. This type of a plugin would be for build tooling.
Jan
The text was updated successfully, but these errors were encountered:
This issue has been automatically marked as stale because it has been a full year without activity. It will be closed if no further activity occurs. Thank you for your contributions.
This issue has been automatically marked as stale because it has been a full year without activity. It will be closed if no further activity occurs. Thank you for your contributions.
migrated from Bugzilla #477649
status ASSIGNED severity enhancement in component build for 9.3.x
Reported in version 9.3.0 on platform All
Assigned to: Joakim Erdfelt
On 2015-09-17 02:04:43 -0400, Jan Bartel wrote:
On 2015-09-17 10:19:27 -0400, Joakim Erdfelt wrote:
On 2015-09-17 20:15:17 -0400, Greg Wilkins wrote:
On 2015-09-17 20:47:32 -0400, Joakim Erdfelt wrote:
On 2015-09-17 20:49:43 -0400, Jan Bartel wrote:
The text was updated successfully, but these errors were encountered: