Utilisation d'OS X Mavericks, et après la mise à niveau de mon JDK, je ne peux plus compiler avec la fourmi.
J'ai fait le googling habituel et la vaste majorité des réponses pointe vers Java_Home ne pas être définie. P> Aide-moi Stackoverflow, vous êtes mon seul espoir! p>
Informations utiles P>
$ tail -n1 /etc/profile export JAVA_HOME=$(/usr/libexec/java_home -v 1.7) $ echo $JAVA_HOME /Library/Java/JavaVirtualMachines/jdk1.7.0_51.jdk/Contents/Home $ which javac /usr/bin/javac $ ls -lah /usr/bin/javac lrwxr-xr-x 1 root wheel 75B 8 Jan 11:23 /usr/bin/javac -> /System/Library/Frameworks/JavaVM.framework/Versions/Current/Commands/javac $ ls -lah /System/Library/Frameworks/JavaVM.framework/Versions/ total 80 drwxr-xr-x 13 root wheel 442B 19 Mar 10:10 . drwxr-xr-x 12 root wheel 408B 19 Mar 09:59 .. lrwxr-xr-x 1 root wheel 10B 8 Jan 11:23 1.4 -> CurrentJDK lrwxr-xr-x 1 root wheel 10B 8 Jan 11:23 1.4.2 -> CurrentJDK lrwxr-xr-x 1 root wheel 10B 8 Jan 11:23 1.5 -> CurrentJDK lrwxr-xr-x 1 root wheel 10B 8 Jan 11:23 1.5.0 -> CurrentJDK lrwxr-xr-x 1 root wheel 10B 8 Jan 11:23 1.6 -> CurrentJDK lrwxr-xr-x 1 root wheel 10B 8 Jan 11:23 1.6.0 -> CurrentJDK lrwxr-xr-x 1 root wheel 10B 19 Mar 10:10 1.7 -> CurrentJDK lrwxr-xr-x 1 root wheel 10B 19 Mar 10:10 1.7.0 -> CurrentJDK drwxr-xr-x 8 root wheel 272B 8 Jan 11:23 A lrwxr-xr-x 1 root wheel 1B 8 Jan 11:23 Current -> A lrwxr-xr-x 1 root wheel 58B 19 Mar 10:10 CurrentJDK -> /Library/Java/JavaVirtualMachines/jdk1.7.0_51.jdk/Contents $ javac -version -source 1.7 -target 1.7 -fork true javac 1.7.0_51 javac: invalid source release: 1.7 Usage: javac <options> <source files>
3 Réponses :
Je suis aussi sur OS X Mavericks avec Java 1.7.0_51 de Oracle. Il n'y a pas d'option Le message d'erreur que vous obtenez est le même message d'erreur que je reçois lorsque j'essaie une autre possibilité finale: le Ce n'est pas une période. C'est un petit arrêt complet em> -Fork code>, mais tout semble fonctionner bien:
helloworld.java h3>
commande: h3>
0000000 j a v a c - v e r s i o n -
6a 61 76 61 63 20 2d 76 65 72 73 69 6f 6e 20 2d
0000020 s o u r c e 1 ⤠** ** 7 - t a
73 6f 75 72 63 65 20 31 e2 80 a4 37 20 2d 74 61
0000040 r g e t 1 . 7 * . j a v a \n
72 67 65 74 20 31 2e 37 20 2a 2e 6a 61 76 61 0a
0000060
-Source code> et
-Target code> out? li>
1.6 code> au lieu de
1.7 code>? Li>
ul>
1.8 code>. Essayez-vous de compiler à partir de la ligne de commande ou d'Eclipse ou d'ant? P>
. Code> n'est pas une période: p> xxx pré>
E2: 80: A4 code> et pas un stop / période em> (
2e code>):
Salut David W (intéressant aussi mon nom :) Pour répondre à vos questions, Officiel Oracle, à l'aide de la fourmi, aucune citation ne fonctionne. Essayer de compiler le monde Hello me donne un aperçu du problème bien que "$ javac -version * .java \ javac 1.7.0_51 helloworld.java:1: impossible d'accéder à java.lang.Object \ Bad Class File: / Bibliothèque / Java /Javavirtualmocachines/jdk1.7.0_51.jdk/Contents/H OME / JRE / LANG / RT.JAR (JVA / LANG / Object.clas s) \ Le fichier de classe a une mauvaise version 51.0, devrait être 49.0: "
Résolu par "sudo cp $ java_home / lib / tools.jar / bibliothèque / java / extensions /" - Je vais répondre à la question et merci officiellement une fois 8h a passé
Merci à @ David-w pour l'effort et aidez à affiner le problème.
à résoudre, j'ai dû p> comme mentionné ICI < / p> os stupide x p> p>
Il n'y a pas de fichier d'outils.jar dans ce chemin pour moi. Je vois des choses comme se déployer.jar, jce.jar, jconsole.jar, mais pas outils.jar - aucune idée pourquoi?
La solution dans la réponse acceptée n'a pas fonctionné pour moi; J'ai eu l'erreur: p>
Outils.jar: Aucun fichier ou répertoire de ce type. P> blockQuote>
Cependant, j'ai trouvé une solution de travail ici . En bref, j'ai installé La dernière version de la JDK de Oracle Site Web et cela résout le problème. p>
@Kenhampson Oui C'est une autre solution au même problème. Mais celui-ci a travaillé pour moi et non l'accepté. Je ne comprends pas le bowvote ...
@desgnl: Je ne t'ai pas répondu. J'ai simplement ajouté un commentaire dans le processus d'examen. Le fait que la solution ici n'a pas fonctionné pour vous suggère que c'était un problème similaire, finalement différent.
@Kenhampson Le fait que cela fournisse une autre solution en fait une réponse valide.
@EJP: OK, assez juste.
J'ai la même version (pas le même système d'exploitation) et cela fonctionne pour moi ... "Nice" problème que vous avez ici.