<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Le Touilleur Express &#187; ant</title>
	<atom:link href="http://www.touilleur-express.fr/tag/ant/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.touilleur-express.fr</link>
	<description>Blog sur Java, le métier de développeur et la vie de freelance par Nicolas Martignole</description>
	<lastBuildDate>Wed, 08 Feb 2012 11:54:37 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>KDE 3.4 , ANT et les couleurs ANSI sous Unix</title>
		<link>http://www.touilleur-express.fr/2005/08/10/kde-34-ant-et-les-couleurs-ansi-sous-unix/</link>
		<comments>http://www.touilleur-express.fr/2005/08/10/kde-34-ant-et-les-couleurs-ansi-sous-unix/#comments</comments>
		<pubDate>Wed, 10 Aug 2005 10:50:51 +0000</pubDate>
		<dc:creator>Nicolas Martignole</dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[ant]]></category>
		<category><![CDATA[Linux]]></category>

		<guid isPermaLink="false">http://www.touillleur-express.fr/?p=98</guid>
		<description><![CDATA[Ce matin j&#8217;ai compilé et installé KDE 3.4 grâce à konstruct, l&#8217;utilitaire de KDE destiné à nous faciliter la vie. Le plus simple pour éviter de corrompre son utilisateur est de créer un nouvel utilisateur dédié pour tester. La compilation a commencé hier et s&#8217;est terminée dans la matinée. C&#8217;est long sur une Mandrake 10.1. Bref voici quelques impressions sur KDE 3.4.
Tout d&#8217;abord on note une net amélioration en terme de performances. Je n&#8217;utilise pas beaucoup d&#8217;application en général (IntelliJ IDEA, amaroK, evolution pour lire mes emails d&#8217;Outlook, un Firefox ...]]></description>
			<content:encoded><![CDATA[<p>Ce matin j&#8217;ai compilé et installé KDE 3.4 grâce à konstruct, l&#8217;utilitaire de KDE destiné à nous faciliter la vie. Le plus simple pour éviter de corrompre son utilisateur est de créer un nouvel utilisateur dédié pour tester. La compilation a commencé hier et s&#8217;est terminée dans la matinée. C&#8217;est long sur une Mandrake 10.1. Bref voici quelques impressions sur KDE 3.4.</p>
<p>Tout d&#8217;abord on note une net amélioration en terme de performances. Je n&#8217;utilise pas beaucoup d&#8217;application en général (IntelliJ IDEA, amaroK, evolution pour lire mes emails d&#8217;Outlook, un Firefox et quelques konsole à droite à gauche). Konqueror dans la version de KDE 3.2, livré avec Mandrake/Mandriva 10.1 n&#8217;est pas franchement exploitable. Pour quelqu&#8217;un qui serait habitué à l&#8217;Explorateur de Windows, je trouve même que Konqueror est mal fichu. Bref à la poubelle. Si les utilisateurs de Windows arrivent à se passer de terminal (aka cmd.exe) sans problèmes, pourquoi avec Linux faut-il encore passer par un terminal pour certaines opérations ? KDE 3.4 réctifie le tir et la nouvelle version de l&#8217;explorateur de fichier est franchement plus pratique.</p>
<p>Après avoir installé IntelliJ et copié mes répertoires de dev, j&#8217;ai reconfiguré quelques petites astuces que j&#8217;aime bien avoir. L&#8217;une d&#8217;elle qui n&#8217;est pas très connue est pourtant très sympa. <b>ANT peut afficher en couleur ses messages</b>. Pour cela, lorsque la commande ant est executée, il suffit de spécifier un logger ANSI. Dans mon fichier <b>.bashrc</b> voici ce que j&#8217;ai ajouté:</p>
<pre>
<code>
# Fichier $HOME/.bashrc
# Alias pour Ant
alias ant="ant -logger  org.apache.tools.ant.listener.AnsiColorLogger"
</code>
</pre>
<p>Ce qui permet de passer de:</p>
<pre>
quote.jar:
      [jar] Building jar: /home/nic_kde34/Work/PDS3.4/build/lib/quote.jar

create.manifest:

rtnewsheadlines.jar.classes:
    [javac] Compiling 12 source files to /home/nic_kde34/Work/PDS3.4/build/classes
    [javac] Note: Some input files use unchecked or unsafe operations.
    [javac] Note: Recompile with -Xlint:unchecked for details.

rtnewsheadlines.jar:
      [jar] Building jar: /home/nic_kde34/Work/PDS3.4/build/lib/rtnewsheadlines.jar

create.manifest:

full:
     [echo] build on 04 August 2005 13:19

BUILD SUCCESSFUL
Total time: 1 minute 51 seconds
[nic_kde34@ptxwXXXX] src>
</pre>
<p><b>à ceci</b></p>
<pre>
<font color=green>quote.jar:</font>
<font color=purple>      [jar] Building jar: /home/nic_kde34/Work/PDS3.4/build/lib/quote.jar</font>

<font color=green>create.manifest:</font>

<font color=green>rtnewsheadlines.jar.classes:</font>
<font color=purple>    [javac] Compiling 12 source files to /home/nic_kde34/Work/PDS3.4/build/classes</font>
<font color=purple>    [javac] Note: Some input files use unchecked or unsafe operations.</font>
<font color=purple>    [javac] Note: Recompile with -Xlint:unchecked for details.</font>

<font color=green>rtnewsheadlines.jar:</font>
      [jar] Building jar: /home/nic_kde34/Work/PDS3.4/build/lib/rtnewsheadlines.jar

<font color=green>create.manifest:</font>

<font color=green>full:</font>
     [echo] build on 04 August 2005 13:19

<font color=green>BUILD SUCCESSFUL</font>
Total time: 1 minute 51 seconds
[nic_kde34@ptxwXXXX] src> echo $ANT
</pre>
<p>Si vous utilisez ANT dans un terminal xterm qui supporte les couleurs ANSI ou si votre shell Windows a chargé le fichier ANSI.SYS, le logger <b>AnsiColorLogger</b> de log4J est capable de vous fournir une sortie en couleur de votre build. Cela ne marche pas avec Windows NT, 2000. Par contre Windows XP semble être compatible. </p>
<p>J&#8217;en profite pour vous redonner un lien vers un article que j&#8217;ai écrit en octobre dernier. Il s&#8217;agit d&#8217;un appender pour Log4J qui utilise les couleurs ANSI lors de l&#8217;affichage des traces dans un xterm. Très pratique avec un serveur comme JBoss ou Tomcat par exemple. <a href="http://www.jroller.com/page/Trecollo/20041013">Voir l&#8217;article <i>Log4J and ANSI colors in a xterm</i></a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.touilleur-express.fr/2005/08/10/kde-34-ant-et-les-couleurs-ansi-sous-unix/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Log4J and ANSI colors in a xterm</title>
		<link>http://www.touilleur-express.fr/2005/08/04/log4j-and-ansi-colors-in-a-xterm/</link>
		<comments>http://www.touilleur-express.fr/2005/08/04/log4j-and-ansi-colors-in-a-xterm/#comments</comments>
		<pubDate>Thu, 04 Aug 2005 10:07:25 +0000</pubDate>
		<dc:creator>Nicolas Martignole</dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[ant]]></category>
		<category><![CDATA[log4j]]></category>

		<guid isPermaLink="false">http://www.touillleur-express.fr/?p=101</guid>
		<description><![CDATA[The product I am currently developing is a unix server for market datas. Log4J is being use for trace and debug. If you also use Log4J in your Java program, and your program generates traces in a term, this might interest you. I wrote a simple Log4J appender that generates ANSI colors for any Log4J trace. If your application outputs a DEBUG message, a green string message is outputed to the xterm. This appender doesn&#8217;t work under Windows 2000 and NT4. It might be interesting for any console java application ...]]></description>
			<content:encoded><![CDATA[<p>The product I am currently developing is a unix server for market datas. Log4J is being use for trace and debug. If you also use Log4J in your Java program, and your program generates traces in a term, this might interest you. I wrote a simple Log4J appender that generates ANSI colors for any Log4J trace. If your application outputs a DEBUG message, a green string message is outputed to the xterm. This appender doesn&#8217;t work under Windows 2000 and NT4. It might be interesting for any console java application such as JBoss if your xterm has support for colors. Feel free to use it but don&#8217;t forget to send me credits if you include-it in your apps.</p>
<pre>
/**
* Copyright (c) 2004-2008 Nicolas Martignole
* All rights reserved
* http://www.jroller.com/page/Trecollo/Weblog
* http://www.touilleur-express.fr
* Created by : Nicolas Martignole
* Date: 13 oct. 2004 Time: 15:12:23
*/
package com.reuters.pds.common.sdk.util;

import org.apache.log4j.Layout;
import org.apache.log4j.Level;
import org.apache.log4j.WriterAppender;
import org.apache.log4j.spi.LoggingEvent;
import org.apache.log4j.spi.ThrowableInformation;

/**
 * ANSIColorAppender is a Log4J Appender that output LoggingEvent messages using ANSI colors.
 *
 * Each level (DEBUG,INFO,WARN) has its own color that you can customize.
 * To use this file, in your log4j.properties or log4j.xml specify ANSIColorAppender
 * instead of a ConsoleAppender.
 *
 * @author Nicolas Martignole (nicolas_at_martignole_dot_net)
 * @version 13 oct. 2004
 */
public class ANSIColorAppender extends WriterAppender {
    /**
     * Method from Log4j AppenderSkeleton that gets call for any Log4J events.
     *
     * @param event
     * @see org.apache.log4j.AppenderSkeleton
     */
    public void append(LoggingEvent event) {
        System.out.print(colorizeToANSI(layout.format(event), event.getLevel(), event.getThrowableInformation()));
    }

    /**
     * Requires a layout
     *
     * @return true
     */
    public boolean requiresLayout() {
        return true;
    }

    /**
     * This method overrides the parent {@link WriterAppender#closeWriter}
     * implementation to do nothing because the console stream is not ours to close.
     */
    protected final void closeWriter() {
    }

    /**
     * @param layout
     */
    public void setLayout(Layout layout) {
        super.setLayout(layout);
    }

    /**
     * Colorizes the specified message for the specified log4j level.
     * To get a list of available colors see url http://pueblo.sourceforge.net/doc/manual/ansi_color_codes.html.
     */
    private String colorizeToANSI(Object message, Level level, ThrowableInformation ti) {
        StringBuffer oBuffer = new StringBuffer();
        switch (level.toInt()) {
            case Level.ALL_INT:
                oBuffer.append("\u001b[1m\u001b[30m");
                break;
            case Level.FATAL_INT:
                oBuffer.append("\u001b[1m\u001b[31m");
                break;
            case Level.ERROR_INT:
                oBuffer.append("\u001b[31m");
                break;
            case Level.WARN_INT:
                oBuffer.append("\u001b[35m");
                break;
            case Level.INFO_INT:
                oBuffer.append("\u001b[34m");
                break;
            case Level.DEBUG_INT:
                oBuffer.append("\u001b[32m");
                break;// dark green
        }
        oBuffer.append(message);
        oBuffer.append("\u001b[0m");

        // Print in red the whole exception stack trace
        if (ti != null) {
            String s[] = ti.getThrowableStrRep();
            for (int i = 0; i < s.length; i++) {
                oBuffer.append("\n\u001b[31m");
                oBuffer.append(s[i]);
                oBuffer.append("\u001b[0m");
            }
        }
        oBuffer.append("\u001b[0m");
        return oBuffer.toString();
    }

}
</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.touilleur-express.fr/2005/08/04/log4j-and-ansi-colors-in-a-xterm/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Ant et SQL</title>
		<link>http://www.touilleur-express.fr/2004/01/15/ant-et-sql/</link>
		<comments>http://www.touilleur-express.fr/2004/01/15/ant-et-sql/#comments</comments>
		<pubDate>Thu, 15 Jan 2004 06:44:13 +0000</pubDate>
		<dc:creator>Nicolas Martignole</dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[ant]]></category>

		<guid isPermaLink="false">http://www.touillleur-express.fr/?p=126</guid>
		<description><![CDATA[Ant est un excellent outil de compilation écrit en Java qui permet de définir des makefile en XML et d&#8217;executer ensuite un grand nombre d&#8217;opérations. Compilation, documentation, tests unitaires, packaging, ftp, envoi d&#8217;email, gestion de CVS ou VSS et même execution.
J&#8217;ai écrit des tests d&#8217;intégration avec Ant, en utilisant un build.xml dans lequel je déploie le logiciel sur lequel je travaille. Grâce à Ant j&#8217;execute une suite de commandes SQL directement à partir de Ant, mais je peux aussi faire appel à des scripts SQL.
Cela donne un peu près cela:

 ...]]></description>
			<content:encoded><![CDATA[<p><a href=http://ant.apache.org/ target=new2>Ant</a> est un excellent outil de compilation écrit en Java qui permet de définir des makefile en XML et d&#8217;executer ensuite un grand nombre d&#8217;opérations. Compilation, documentation, tests unitaires, packaging, ftp, envoi d&#8217;email, gestion de CVS ou VSS et même execution.</p>
<p>J&#8217;ai écrit des tests d&#8217;intégration avec Ant, en utilisant un build.xml dans lequel je déploie le logiciel sur lequel je travaille. Grâce à Ant j&#8217;execute une suite de commandes SQL directement à partir de Ant, mais je peux aussi faire appel à des scripts SQL.</p>
<p>Cela donne un peu près cela:</p>
<pre>
    &lt;property name="oracle.jdbc" value="ojdbc14.jar"/&gt;
    &lt;property name="login" value="nicmarti" description="DB Login"/&gt;
    &lt;property name="pass" value="nicmarti" description="DB Password"/&gt;
    &lt;property name="oracle.host" value="getix02" description="Oracle Database hostname"/&gt;
    &lt;property name="oracle.port" value="1521" description="Oracle Port"/&gt;
    &lt;property name="oracle.sid" value="DEV9i" description="Database instance"/&gt;

    ...
    ...
    &lt;!-- ===================================================================//--&gt;
    &lt;!--   Delete Web App Tables on a oracle database                       //--&gt;
    &lt;!-- ===================================================================//--&gt;
    &lt;target name="oracle.webapp.drop" description="Delete the Oracle db"&gt;
        &lt;sql
            driver="oracle.jdbc.driver.OracleDriver"
            url="jdbc:oracle:thin:@${oracle.host}:${oracle.port}:${oracle.sid}"
            userid="${login}"
            password="${pass}"
            onerror="continue"
            delimiter=";"
            src="${oracle.dir}/drop_webapp_tables.sql"
            &gt;
            &lt;classpath&gt;
                &lt;pathelement location="${lib.dir}/${oracle.jdbc}"/&gt;
            &lt;/classpath&gt;
        &lt;/sql&gt;
    &lt;/target&gt;
    ...
    ...
</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.touilleur-express.fr/2004/01/15/ant-et-sql/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

