J'appelle javac du code C#. Au départ, je trouve sa section comme suit:Comment trouver javac.exe par programme?
protected static string JavaHome
{
get
{
return Environment.GetEnvironmentVariable("JAVA_HOME");
}
}
Cependant, je viens d'installer le JDK sur un nouvel ordinateur et trouvé qu'il n'a pas mis automatiquement la variable d'environnement JAVA_HOME. nécessitant une variable d'environnement est inacceptable dans toute application Windows pour la dernière décennie, donc je besoin d'un moyen de trouver javac si la variable d'environnement JAVA_HOME n'est pas défini:
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;
}
}
Pourquoi est-ce inacceptable? Comment l'ordinateur est-il censé savoir magiquement où l'exécutable est installé? Ils ne sont pas des lecteurs d'esprit, ce sont des ordinateurs, vous devez leur dire quoi faire ... – amischiefr
Parce qu'ils ne se synchronisent pas correctement à travers l'environnement, ils sont difficiles à configurer, et j'en ai marre d'avoir à écrire instructions alambiquées aux utilisateurs. –