wake-up-neo.com

javac1.8 Klasse nicht gefunden

Ich habe zwei jdks installiert - jdk 1.5 und jdk 1.8 ..__ Ich habe folgende Ant build.xml-Konfigurationsdatei:

<target name="compileCustomSrc">
    <javac srcdir="src" destdir="build/classes" source="1.5" target="1.5" >
        <classpath>
            <fileset dir="C:/lib/">
                <include name="*.jar" />
            </fileset>
        </classpath>
    </javac>
</target>

Vor der Installation von jdk1.8 kompilierte Ant von Eclipse alle erfolgreichen Quellen. Aber jetzt habe ich folgende Fehlermeldung:

Klasse nicht gefunden: javac1.8

Mein Java_HOME und JRE_HOME:

Java_HOME = C:\Programme (x86)\Java\jdk1.5.0_16 
 JRE_HOME = C:\Programme (x86)\Java\jre1.5.0_16

und setzen Sie in Eclipse JRE auf 1.5. Setzt Java 1.8 während der Installation einige Konfigurationen ein?

79
kamilz
-Dbuild.compiler=javac1.7
169

Als Folge der Antwort von Kristian Holdhus (als korrekt markiert) können Sie stattdessen das compiler-Attribut für die Ant-Javac-Task verwenden. Die Einstellung compiler="modern" sollte sowohl rückwärts (bis 1.3) als auch vorwärtskompatibel sein.

Dies vermeidet die Notwendigkeit, die Java System-Eigenschaft mit dem Namen build.compiler festzulegen. Nur wenn das Attribut compiler nicht explizit für die Task javac festgelegt wird, verwendet Ant den Wert von build.compiler als Fallback.

14
Chuck Daniels

Ich hatte das gleiche Problem. Ich hatte Java_HOME und JRE_HOME richtig gesetzt. Ich hatte auch Ant> 1,9. 

Um das Problem zu beheben, gehen Sie zu Eclipse to Window -> Preferences. Erweitern Sie Ant und wählen Sie Laufzeit aus. Standardmäßig sollte die Registerkarte Classpath ausgewählt werden. Auf der rechten Seite befindet sich eine Schaltfläche mit der Bezeichnung "Ant Home". Klicken Sie auf diese Schaltfläche und überprüfen Sie, ob der Ant-Ordner angezeigt wird.

7
Mike Kuenzi
Java_HOME = C:\Program Files (x86)\Java\jdk1.5.0_16
JRE_HOME = C:\Program Files (x86)\Java\jre1.5.0_16

Ihr Java_HOME und JRE_HOME sind auf die Java 1.5-Installation eingestellt, daher werden keine 1.8-Binärdateien (wie javac) gefunden. Stellen Sie sie auf die Java 1.8-Installation ein, und Sie sollten in Ordnung sein.

3

Ich habe es mit Eclise ausprobiert und die gleiche Fehlermeldung erhalten Klasse nicht gefunden: javac1.8

Ich habe die ANT-Version auf meinem System überprüft

> Ant-Version

Apache Ant (TM) Version 1.9.6 wurde am 29. Juni 2015 erstellt 

Als ich versuchte, die build.xml über den Befehl Prompt auszuführen, funktionierte es .. .. Dann überprüfte ich, dass in der Eclipse die ältere Version des ANT verwiesen wurde.

Ich habe einfach den ANT HOME-Pfad in der Eclipse editiert und es hat auch von hier funktioniert. :)

Unten ist das Bild, von dem aus der ANT-Pfad in der Eclipse bearbeitet werden muss.

  1. Klicken Sie mit der rechten Maustaste auf die Datei build.xml
  2. Rennen wie
  3. Externe Werkzeugkonfigurationen
  4. Wählen Sie die Klassenpfad-Registerkarte

Ändern Sie nun den ANT-Home-Pfad von hier aus.

 enter image description here

2
KulDeep

Aktualisieren Sie Ant auf Version 1.9.x als Java 8, das nicht mit Ant-Versionen unter 1.9 kompatibel ist

1
Neha Priya

sie können ANT 1.10 auf Ihr System herunterladen und entpacken und versuchen, das ANT-Home in Eclipse für Ihr Projekt auf 1.10 zu ändern. Es sollte funktionieren. Lesen Sie dies für weitere Details. http://devops-badal.blogspot.com/2017/02/class-not-found-javac18-issue-while.html

0
Badal Singh

Aktualisieren Sie Ant auf die Version 1.9.x als Java 8, das nicht mit Ant-Versionen unter 1.9 oder nach dem Befehl put -Dbuild.compiler = javac1.7 kompatibel ist.

ant-Release -Dbuild.compiler = Javac1.7

0
linhadiretalipe

Manchmal hängt das Problem beim Erstellen des Krieges durch ANT auch mit der Übereinstimmung der Java-Version in build.properties-Dateien zusammen, da build.XML versucht, die in der build.compiler-Eigenschaft angegebene Java-Version zu verwenden

prüfen Sie, ob die Eigenschaft build.compiler mit der beabsichtigten Java-Version übereinstimmt.

0
SoSufi

Ich habe alle anderen Lösungen ausprobiert, aber keine hat funktioniert. Ich habe endlich einen Ansatz gefunden, der für mich in Eclipse funktionierte:

  • Klicken Sie mit der rechten Maustaste auf den Namen der Ant-Task, z. "compileCustomSrc" im ant-Fenster.
  • Wähle Run As | External Tool Configurations
  • Wählen Sie dann auf der Registerkarte JRESeparate JRE: Java SE7 oder wie auch immer Ihre Java 7 heißen soll, und drücken Sie Apply und dann Run.

Ihre Ameisenaufgabe wird ausgeführt und korrekt erstellt!

0
Brad Parks

Sie können eine neuere Version von Eclipse herunterladen, die eine neuere Version von Ant im Plugins-Verzeichnis enthält. Kopieren Sie dann das Ant-Glas in das Plugin-Verzeichnis der älteren Eclipse-Version. Eclipse verweist automatisch auf die neuere Version von Ant. Dies funktionierte für ältere Kepler mit neueren Mars2 für mich.

0
techron