I agree that it could grow to be a PITA. That's why I'm trying to be wary, and limit the functionality that is offered.

The majority of Java apps that I've worked on were deployed on Unix machines. In some situations, I was writing a replacement for an existing piece of C or Perl code that relied heavy on environment variables.

I don't like env vars in Java apps -- I always try to rely on property files or system properties. But it seems to be a battle that I always lose. That's why I thought it would be nice to add this functionality to [lang].

The problem is the abundance of platforms. Just in looking at the Ant code, they have if/elses for things like Vms and OS2 that I've never used. What a headache.

I'm starting to think that maybe this isn't good for [lang] either. If anywhere, maybe it should go into [io] instead.

Has anyone else found themselves having to load environment variables in their apps? If not, I'm willing to continue cut and pasting my solution into each of my projects, instead of creating an unnecessary platform issue for [lang].




Phil Steitz wrote:
__matthewHawthorne wrote:

I posted something a while back about adding a method or class to access
environment vars.  Henri suggested that I take a look at Ant's solution
to this.

Ant's env var access is obtained through their <execute> task.  This
class has a lot of logic to handle different OS's, and I think that a
refactored version may be a worthwhile addition to lang.

I had my own small class to do this, but I would image that Ant's
version has been more thoroughly tested and bulletproofed.

Here's the link to Ant's Execute class.
http://cvs.apache.org/viewcvs.cgi/ant/src/main/org/apache/tools/ant/taskdefs/Execute.java?rev=1.70&content-type=text/vnd.viewcvs-markup



Any thoughts? I think this would be very useful -- just about every project that I've worked on has had to access env vars at some point or another. And providing a nice simple way to execute system commands and grab the output would be cool.



While I can definitely see the value for this kind of capability in a build script, I am not sure it belongs in [lang]. I am not violently opposed, just not convinced that it belongs. Could be I am thinking too narrowly in terms of server apps, where I generally try to avoid system calls and environment dependencies like the plague, since these things can lead to brittle solutions and general deployment trauma. Seems like a big PITA to support this kind of thing in a platform-independent (at least from the user's standpoint) way that is safe to use in server applications.

Phil



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Reply via email to