Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 8206737
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: June 7, 20262026-06-07T08:46:22+00:00 2026-06-07T08:46:22+00:00

This is more a question about what’s out there, and future directions about resolving

  • 0

This is more a question about what’s out there, and future directions about resolving tools such as Ivy. Is there anything that can mention class-level dependencies for packages, rather than package level dependencies?
For example, let’s say I have an apache-xyxy package, that comes with an ivy.xml that lists all it’s dependencies. But suppose I only use class WX in apache-xyxy, which doesn’t require most of those dependencies. Couldn’t a resolver be intelligent and identify that class WX can only possibly invoke the set of other classes (AB, DC, EF), and none of those classes use any of other dependencies, to create a minimal subset of required dependencies? This would be easier and safer than cherry picking to remove some package dependencies that aren’t needed because of the specific classes used in that package, and also prevent breaking down several larger packages into smaller ones just for this reason.

Then, if I later decided to use class GH from apache-xyxy, I could do an ivy resolve, and it would dynamically bring in the additional required libraries.

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-06-07T08:46:23+00:00Added an answer on June 7, 2026 at 8:46 am

    When packaging compiled java code for distribution it’s common practice to bundle Java “packages” together. It’s also quite possible (but silly) to split a java package across multiple jars. Large frameworks (like Spring) have lots of sub packages in different jars so that users can pick and choose what they need at run-time….. Of course the more jar options one has, the more complex it becomes to populate the run-time classpath…

    The keyword here is “run-time”…. Tools like Apache ivy and Apache Maven are primarily designed to manage dependencies needed at build time….

    Apache Maven does have a “runtime” scope, for it’s dependencies, but it’s limited to a single list of jars. Typically this scope is used for deciding which jars are needed for testing and populating the lib directory of a WAR file.

    Apache ivy has a similar more flexible mechanism called “configurations”. It’s possible to create as many runtime configurations as you need, and these can be used to decide which jars are downloaded by ivy.
    So while it would appear ivy has the answer, I’ve rarely seen ivy used when launching programs (The one exception is Groovy’s Grape annotations)

    So what, you might ask, is the answer?

    The future of “run-time” classpath management is either OSGI or project jigsaw. I’m more familiar with OSGI where special dependency indicators are added the the jar file’s manifest, stating what it’s dependencies are. The idea is that when a container loads a jar (called a “bundle”) it can check and see whether the other dependencies are already loaded. These dependencies can be retrieved and loaded from a common repository. This is fundentally different way to launch java. Traditionally each application is loaded onto it’s own isolated classpath…..

    Time will tell if either project catches on. In the meantime we use Apache ivy and Apache Maven to build self-contained and possibly over-bloated WAR (EAR, etc) packages.

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

This is more of a question about getting my head around the process I
So this is more of a general question about apps and techniques rather than
I'm not talking about making portable code. This is more a question of distribution.
This question is more about guidance than actually solving my problem: I need to
This question is more a re-insurance than one directly about how to code. As
This is kind of more generic question, isn't language-specific. More about idea and algorithm
I got this in an interview question -- the question was more about what
So I'm trying to learn more about lambda expressions. I read this question on
This is a more theoretical question about macros (I think). I know macros take
This is a more a philosophical question about Apple's design decisions than a question

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.