Après quelques jours, recherchez comment utiliser le compresseur YUI dans un script de construction de fourmis, je l'ai enfin terminé. De nombreux anciens exemples (<2010) existent pour créer une tâche de fourmi et utiliser cela dans votre script de construction, mais qui était surchargé pour moi. P>
De nombreux exemples sont également anciens et nécessitent une plus grande connaissance de la fourmi ou de la configuration des tâches de fourmis. La solution ci-dessous est simplement ce qui était rapide, facile et efficace pour moi. P>
5 Réponses :
Le ci-dessous a été ajouté à l'une de mes balises Ceci a été effectué avec YUI Compressor 2.4.7 et j'exécute le script de création de fourmis dans Eclipse Juno sans aucune modification des chemins de classe. ou d'autres modifications des paramètres. P>
<!-- Minimizing Javascript files -->
<echo message="Compressing Javascript files at location: ${build.root}/resources/js/*.js" />
<java jar="c:/dev/lib/yuicompressor-2.4.7/build/yuicompressor.jar" fork="true">
<arg value="${build.root}/resources/js/*.js" /> <!-- input path for JS files -->
<!--<arg value="-v" /> --><!-- Turn on verbose -->
<arg value="-o" />
<arg value="'.js$:.js'" />
<arg value="${build.root}/resources/js/*.js" /> <!-- output path for JS files -->
<classpath>
<pathelement location="c:/dev/lib/yuicompressor-2.4.7/build/yuicompressor.jar"/>
</classpath>
</java>
Comment compresser tout fichier .js dans un fichier .js? ? Parce que ci-dessus, le script comprime .js fichiers dans leur propre fichier ...
Il donne FilenotfoundException pour - /Home/shwetanka /weprojects/webapp/webapp/content/js/mobile/*.j s Le chemin existe.
@Shwetankaka Si vous avez une question, vous devez créer votre propre thread de questions et voir cette réponse indiquant le problème.
J'ai été heureusement / malheureusement donné mon script de fourmis, cependant, après un certain temps de travail sur le projet, le compresseur YUI dépose la construction du projet en raison du fichier JS. Y a-t-il un moyen de montrer / enregistrer le fichier coupable?
@ DarkStar1 Malheureusement, je ne connais pas d'option de journal qui vous indique le nom de fichier du fichier en cours de compression. Vous pouvez essayer d'exécuter votre bande de fourmis et spécifier explicitement le nom du fichier JavaScript au lieu de "* .js" comme indiqué ci-dessus.
classePath semble être un peu superflu, sinon ça a l'air bien
Obtenir java.io.filenotfoundException: /var/lib/jenkins/workspace/register/public/js/*.js (aucun fichier ou répertoire de ce type) code> avec yui compresseur 2.4.7 sur Ubuntu.
Comment dois-je modifier la solution fournie pour exclure le fichier déjà disponible "" .min.js "'de se compresser à nouveau. J'ai essayé d'ajouter "exclut" l'attribut avec la valeur comme "" * /. Min.js "'à' << FileNet> 'mais cela ne semble pas fonctionner.
Hey, je ne suis pas sûr de la réponse à votre question, mais je me demande si vous rencontrez des problèmes de cause par une tentative de compresser le fichier plus loin?
J'utilise la solution suivante pour minimiser les fichiers en place depuis que j'ai obtenu le Pour minimiser CSS, remplacer FilenotfoundException code> avec la réponse précédente.
js code> avec code> avec < Code> CSS code> ci-dessous. p>
J'avais le même problème avec un script ANT en fonction de celui du projet HTML5BOLERPLET. Votre solution d'aller à un répertoire temporaire semble d'abord l'avoir corrigé.
J'utiliserais cette tâche ant: http://code.google .COM / P / YUI-Compressor-ant-Tâche / ou celui-ci: https: //github.com/parambirs/ant-yui-compresseur qui semble naté que celui applicable. P>
Très belle solution. La configure semble très simple en avant.
J'ai essayé le code de Victor. Il n'y avait aucun répertoire temporaire effectivement nécessaire. J'ai utilisé ce code et cela a fonctionné pour moi.
p> p> p>
Comment dois-je modifier la solution fournie pour exclure le fichier déjà disponible "" .min.js "'de se compresser à nouveau. J'ai essayé d'ajouter l'attribut "exclut" avec la valeur comme "" /. Min.js "ainsi que" ** / min i> "à"
C'est "exclure" et non "exclut".
Vous pouvez compresser tous les fichiers JS disponibles dans un dossier particulier sans copier dans le dossier TEMP.
<property name="js.source" value="js/combine" /> <property name="js.target" value="js/compress" /> <fileset dir="${yuicompressor.lib}"> <include name="yui/yuicompressor-2.4.z8.jar"/> </fileset> <target name="minifyjs" description="compress the JS files"> <delete includeEmptyDirs="true"> <fileset dir="${js.target}" includes="**/*" defaultexcludes="no"/> </delete> <apply executable="java" parallel="false" verbose="true" failonerror="yes"> <fileset dir="${js.source}" includes="**/*.js" excludes="**/*-min.js, **/*.min.js"/> <arg line="-jar"/> <arg path="${yuicompressor.lib}" /> <srcfile/> <arg line="-o"/> <targetfile/> <mapper type="glob" from="*.js" to="${js.target}/*.js"/> <arg line="--charset"/> <arg line="utf-8"/> </apply> </target>