Sviluppando giorno dopo giorno con Liferay, ci si sarà resi conto dell'innumerevole quantità di file temporanei che vengono creati all'interno della cartella di Tomcat.
Spesso il proliferare di questi file, oltre ad occupare inutilmente spazio su disco, può generare problemi di class loading; vale a dire che Tomcat smette di funzionare correttamente caricando la versione sbagliata delle classi.
Risolvere questo problema è molto semplice, basta arrestare Tomcat e cancellare tutti questi file temporanei. Ma bisogna farlo a mano; perchè quindi non sfruttare gli script Ant forniti da Liferay?
Normalmente lo script Ant che si utilizza è il build.xml contenuto all'interno del proprio progetto di Eclipse; script che di fattoè vuoto ed include solamente i file forniti dal SDK di Liferay.
Apriamo quindi il nostro script build.xml ed aggiungiamo il seguente blocco:
<target name="clean-server">
<delete includeemptydirs="true" dir="${app.server.dir}/logs"/>
<delete includeemptydirs="true" dir="${app.server.dir}/temp"/>
<delete includeemptydirs="true" dir="${app.server.dir}/work"/>
</target>
<target name="clean-server-all" depends="clean-server">
<delete includeemptydirs="true" dir="${app.server.deploy.dir}/${plugin.name}"/>
</target>
Il primo target si occupa di svuotare (in realtà le rimuove) le cartelle di Tomcat:
Il secondo target, in aggiunta alle cartelle sopra, rimuove anche completamente la cartella del progetto situata dentro webapps.
In questo modo abbiamo automatizzato la procedura di pulitura per il nostro progetto.
Volendo è possibile spostare i 2 target direttamente dentro il SDK ma consiglio di lasciarlo il più pulito possibile.
Il codice Ant che andiamo ad utilizzare funziona solamente se stiamo utilizzando Tomcat!
Enjoy!