我从C#代码调用javac。最初,我发现它的位置仅如下:如何以编程方式查找javac.exe?
protected static string JavaHome
{
get
{
return Environment.GetEnvironmentVariable("JAVA_HOME");
}
}
然而,我刚安装了JDK在新电脑上,发现它没有自动设置JAVA_HOME环境变量。 需要的环境变量是在任何Windows应用程序在过去十年中不能接受的,所以我需要一种方法来寻找javac如果JAVA_HOME环境变量未设置:
protected static string JavaHome
{
get
{
string home = Environment.GetEnvironmentVariable("JAVA_HOME");
if (string.IsNullOrEmpty(home) || !Directory.Exists(home))
{
// TODO: find the JDK home directory some other way.
}
return home;
}
}
为什么不能接受?计算机应该如何神奇地知道可执行文件的安装位置?他们不是介意读者,他们是电脑,你必须告诉他们该怎么做...... – amischiefr 2009-10-23 17:48:31
因为他们没有在环境中正确同步,他们是一个配置的痛苦,我厌倦了写作令人费解的指示给用户。 – 2009-10-23 17:51:14