Eclipse verwendet intern eine eigene Javac-Implementierung. Daher benötigen Sie für die meisten Zwecke nur eine kompatible JRE. Aber javac task in ANT berücksichtigt die JAVA_HOME oder prüft auf die lokale path
Variable. Auf Windows-Rechner als temporäre Lösung können Sie tun:
Open a command prompt
geben Sie dann SET path=C:\Program Files\Java\jdk1.6.0_22\;%path%
Hit eingeben geben Sie dann <eclipsehome>\eclipse.exe
Nun kann jeder Prozess von Eclipse gelaicht wird Ihre JDK-Version in der Pfadvariablen haben.
für eine dauerhafte Lösung .. 1. go to advance system setting
2. Wählen Sie advanced
Registerkarte 3. wählen environment variables
4. Das System path
Variable und JAVA_HOME ändern (falls erforderlich)
Sie können die ähnliche Sache tun für * Nix-System (überprüfen Sie einfach, wie Sie die Umgebungseinstellung einstellen)
Ich hoffe, das wird funktionieren.
UPDATE
Das Projekt Classpath ist nicht das gleiche wie die ANT Classpath. Um einen Ant-Klassenpfad einzurichten, navigieren Sie zu window->preferences->ant->runtime
. Überprüfen Sie, ob die Global Entries
auf C:\Program Files\Java\jdk1.6.0_22\lib\tools.jar
zeigt, wenn nicht, fügen Sie sie hinzu. Normalerweise funktioniert es in den meisten Fällen, in denen ant nach Javac fragt. Wenn dies fehlschlägt, überprüfen Sie bitte, ob ein anderes Skript Ihre JAVA_HOME-Variable und die ANT global entries
-Einstellung nicht zurücksetzt.
Wenn IvyDE nicht die ANT Verwendung mit Eclipse als Plugin gebündelt (und unter Bezugnahme auf einige Standard-Installation) oder wenn Sie eine Umgebungsvariable wie ANT_HOME definiert haben kopieren Sie dann tools.jar
Datei C:\Program Files\Java\jdk1.6.0_22\lib\
-ANT_HOME\lib
.
Überprüfen Sie auch diese vorherige SO Post (Ant can't find Javac. No matter what I do it always claims JAVA_HOME is "C:\Program Files\Java\jre6")
UPDATE 2 ok .. Prüfen Sie diese Seite ... http://ant.apache.org/ivy/ivyde/history/latest-milestone/preferences.html
Reihenfolge der Classpath-Einträge: Durch standardmäßig die Klassenpfadcontainer Einträge werden nach Reihenfolge der Deklaration in der efeu.xml sortiert. Wenn dort viele Einträge sind, kann es nützlich sein, sie lexikalisch für verbesserte Lesbarkeit bestellt haben.
Ist tools.jar
in ivy.xml
vorhanden? bitte einmal prüfen.
Ich habe die PATH- und JAVA_HOME-Variablen in der Umgebung, die Eclipse ausführt, richtig eingestellt, aber dies wird nicht beachtet. Nur die Einstellung -vm scheint die Variable JAVA_HOME zu beeinflussen, die von der von IvyDE ausgeführten ant javac-Aufgabe verwendet wird. – tukushan
@tukushan: Überprüfen Sie meine aktualisierte Antwort. hoffe, es wird funktionieren. – Favonius
Nochmals vielen Dank für Ihre Antwort. Mein ANT-Klassenpfad in Eclipse enthält den Eintrag tools.jar. Ich kann Ant-Build-Skripte mit der Java-Task in Ordnung ausführen. Leider funktioniert es immer noch nicht, wenn ich eine ant javac Aufgabe über IvyDE ausführe. Muss etwas mit der Art zu tun haben, wie IvyDE eine Ameise startet. Ich habe versucht, tools.jar in ANT_HOME \ lib zu setzen, aber das hat auch nicht geholfen. – tukushan