Le réglage de la cible de la version de Java en ant javac
J'ai besoin de compiler un fichier jar à l'aide de ant (1.7.0) pour s'exécuter sous une version spécifique de Java (1.5). J'ai actuellement la version 1.6 de Java sur ma machine. J'ai essayé de réglage:
<target name="compile">
<javac compiler="javac1.5" target="1.5" srcdir=.../>
</target>
J'ai aussi enlevé
<property name="build.compiler" value="modern"/>
et il n'y a pas de fichier de propriétés. Je suis sous la version 1.6 de Java sur Linux/SUSE
Aussi est-il un moyen simple de déterminer quelle version de Java est attendue dans le fichier jar.
Vous devez vous connecter pour publier un commentaire.
Utiliser "cible" de l'attribut et de supprimer le "compilateur" attribut. Voir ici. Donc, il devrait aller quelque chose comme ceci:
Espère que cette aide
source
etbootclasspath
À la fois la source et la cible doit être spécifié. Je vous recommande de fournir ant par défaut, de cette façon, vous n'avez pas besoin de spécifier la source/cible de l'attribut pour chaque javac tâche:
Voir Java cross-compilation de notes pour plus d'informations.
De trouver la version de java dans le classfiles j'ai utilisé:
qui annonce la version au début en tant que
qui correspond à Java 1.5
Vous pouvez également définir
{{ant.build.javac.target=1.5}}
propriété ant de mise à jour par défaut de la version cible de la tâche.Voir http://ant.apache.org/manual/javacprops.html#target