2016-04-24 12 views
0

Ich versuche 3 Java-Dateien zu kompilieren, die sich in: /var/www/PhpProject2/Lösungen/5/9/1/auf meinem Computer (Linux Ubuntu) befinden.javac markiert meine Kommentare als Fehler

habe ich den folgenden Befehl in meiner Schale: Javac /var/www/PhpProject2/Solutions/5/9/1/*.java

und 100 Fehler gibt, die wie folgt aussieht:

Fehler: nicht mappbares Zeichen für die Codierung UTF8 mergeSort (arr); //

mit einem Pfeil, der auf eines der Zeichen zeigt.

Dies ist neu für mich, denn für alles, was ich weiß Compilation wird alle Kommentare in meinem Code los, nicht als Fehler behandeln.

Was ich bisher versucht:

Änderung der Befehl an: javac -encoding UTF-8 /var/www/PhpProject2/Solutions/5/9/1/*.java

Look die Datei-Codierung mit: Datei -bi /var/www/PhpProject2/Solutions/5/9/1/UnionIntervals.java

und dann versucht, I: javac -encoding text/x-C++; charset = iso-8859-1 /var/www/PhpProject2/Solutions/5/9/1/*.java

alle endete mit dem gleichen Fehler.

+0

Probieren Sie 'hexdump -C 'aus, um zu überprüfen, was sich tatsächlich in Ihrer Datei an einer der Positionen befindet, über die sich der Compiler beschwert. – Markus

+0

Ihr Problem könnte diesem ähneln: http://stackoverflow.com/questions/4995057/unmappable-character-for-encoding-utf-8-error –

+0

@MichaelMarkidis Ich las dieses vor. es wurde von gelöst re-Speichern der Datei so tatsächlich gab es überhaupt kein Problem und wenn es eine war, war es im eigentlichen Code- nicht in den Kommentaren wie in meinem Fall. – JARVIM

Antwort

0

die folgende minimalistische Java-Datei Gegeben:

> cat test.java 
// ä 

Der folgende Befehl genau den Fehler gibt Sie beschreiben:

> javac -encoding utf8 test.java 
test.java:1: warning: unmappable character for encoding utf8 
// ? 

Wenn die richtige Codierung verwendet, wird die Datei ohne Fehler abgearbeitet werden:

> javac -encoding iso-8859-1 test.java 

Dies liegt daran, dass der Java-Compiler das whol analysieren muss e Datei (einschließlich der Kommentare). Die Kommentare werden erst nach dem Parsen entfernt.

+0

vielen dank! das funktionierte wirklich für mich, aber wie hast du gedacht, dass iso-8859-1 die richtige Codierung ist? – JARVIM

+0

Gebildete Vermutung von der Ausgabe des von Ihnen bereitgestellten 'Datei'-Befehls. Übrigens denke ich, du solltest deine Umgebung aussortieren. Die Codierung Ihrer Quelldatei sollte Ihrer Standardcodierung entsprechen. Dann müssen Sie sich nicht mit dieser Art von Problemen befassen. Was ist der Inhalt Ihrer 'LANG'-Umgebungsvariablen? – Markus

+0

Ich weiß nicht, wie kann ich das herausfinden? – JARVIM