Tell me more ×
Stack Overflow is a question and answer site for professional and enthusiast programmers. It's 100% free, no registration required.

As I researched on this very same question, I got the following :

Unlike Ruby & Python - Java do-not have the concept of system wide installation of libraries. So, they configure their class-path to avoid clashes.

Seems logical. But then why do we have them in Python & Ruby, etc ? We could have done exactly how java does it.

Why create a problem and then try to solve it in a hacky way ??

That said, then I found this:

Groovy just like ruby has gvm on the lines of rvm.

Now, Groovy is scripting version of the java world. It again seems need / have the same problem to solve.

So, Why do we need virtualenvironments in case of scripting languages ?

Can anyone explain - what am I missing ?

share|improve this question
stackoverflow.com/a/7300200/1628832 This is a great explanation – karthikr yesterday
No, this explains why I am asking this question. – Yugal Jindle yesterday
3  
Who said anything about need? You can still install python packages in a new location and add to the PYTHONPATH. virtualenv is just more convenient. – Martijn Pieters yesterday
Right.. All I am asking is what makes all Scripting languages carry the convenience which due to some reason is not for compiled languages like Java ? – Yugal Jindle yesterday
2  
Look at it the other way around, why does Java not yet have package management that supports automatic install, version requirements and dependency management? I posit it's a difference in developer culture, but answering that question is primarily opinion based. – Martijn Pieters yesterday
show 3 more comments

put on hold as primarily opinion-based by Subhrajyoti Majumder, Martijn Pieters, tim_yates, Esoteric Screen Name, dmahapatro yesterday

Many good questions generate some degree of opinion based on expert experience, but answers to this question will tend to be almost entirely based on opinions, rather than facts, references, or specific expertise.If this question can be reworded to fit the rules in the help center, please edit the question.

1 Answer

Think of the system-wide (or virtualenv-wide) library installations as being a convenience. It saves you having to refer to commonly-used libraries on each run.

share|improve this answer
Right.. All I am asking is what makes all Scripting languages carry the convenience which due to some reason is not for compiled languages like Java ? – Yugal Jindle yesterday
@YugalJindle No answer to that, I'm afraid. My assumption is at the time Java was designed (15+ years ago) this feature simply did not occur to them, and in the years since then, adding this has never become a priority. – Travis Bear yesterday
So.. my question stands valid. But SO community closed my question. There is no other place where I can get a proper answer to this question. I am sorry but SO community is limiting me. – Yugal Jindle 3 hours ago

Not the answer you're looking for? Browse other questions tagged or ask your own question.