<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
  <title>Artisan Numérique</title>
  <link rel="alternate" type="text/html" href="http://artisan.karma-lab.net/node/1156"/>
  <link rel="self" type="application/atom+xml" href="http://artisan.karma-lab.net/node/1156/atom/feed"/>
  <id>http://artisan.karma-lab.net/node/1156/atom/feed</id>
  <updated>2008-06-11T11:25:51+02:00</updated>
  <entry>
    <title>Bloc-note &#039;ANT&#039;</title>
    <link rel="alternate" type="text/html" href="http://artisan.karma-lab.net/node/1156" />
    <id>http://artisan.karma-lab.net/node/1156</id>
    <published>2007-06-19T10:06:11+02:00</published>
    <updated>2008-06-11T11:25:51+02:00</updated>
    <author>
      <name>Ulhume</name>
    </author>
    <category term="java" />
    <category term="Aucun" />
    <category term="javafr" />
    <category term="Note" />
    <category term="OK" />
    <summary type="html"><![CDATA[<p>Bloc-Note dédia à Apache ANT.</p>    ]]></summary>
    <content type="html"><![CDATA[<p>Bloc-Note dédia à Apache ANT.</p>


	<a name='chapter_1'></a>
  <h2>Un classloader dédié à une tâche ANT</h2>
	

  <div class='code-block code-block-fragment'>
  <div class='container'>
  <span class="kw1">public</span> <span class="kw1">class</span> TestTask <span class="kw1">extends</span> Task<br />
<span class="br0">&#123;</span><br />
&nbsp; <span class="coMULTI">/** loader class name. */</span><br />
&nbsp; <span class="kw1">private</span> <a target="blank" href="http://www.google.com/search?hl=en&amp;q=allinurl%3AString+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span class="kw3">String</span></a> loaderClassName<span class="sy0">;</span><br />
<br />
&nbsp; <span class="coMULTI">/** classpathref property internal field. */</span><br />
&nbsp; <span class="kw1">private</span> <a target="blank" href="http://www.google.com/search?hl=en&amp;q=allinurl%3AReference+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span class="kw3">Reference</span></a> classpathref<span class="sy0">;</span><br />
<br />
&nbsp; <span class="coMULTI">/** loader instance. */</span><br />
&nbsp; <span class="kw1">private</span> DatabaseModelLoader loader<span class="sy0">;</span><br />
<br />
&nbsp; <span class="coMULTI">/**<br />
&nbsp; &nbsp;* getter for the classpathref property.<br />
&nbsp; &nbsp;* @return Returns the classpathref property value.<br />
&nbsp; &nbsp;*/</span><br />
&nbsp; <span class="kw1">public</span> <a target="blank" href="http://www.google.com/search?hl=en&amp;q=allinurl%3AReference+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span class="kw3">Reference</span></a> getClasspathRef<span class="br0">&#40;</span><span class="br0">&#41;</span><br />
&nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; <span class="kw1">return</span> classpathref<span class="sy0">;</span><br />
&nbsp; <span class="br0">&#125;</span><br />
<br />
&nbsp; <span class="coMULTI">/**<br />
&nbsp; &nbsp;* setter for the classpathref property.<br />
&nbsp; &nbsp;* @param classpathref The classpathref to set.<br />
&nbsp; &nbsp;*/</span><br />
&nbsp; <span class="kw1">public</span> <span class="kw4">void</span> setClasspathRef<span class="br0">&#40;</span><a target="blank" href="http://www.google.com/search?hl=en&amp;q=allinurl%3AReference+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span class="kw3">Reference</span></a> classpathref<span class="br0">&#41;</span><br />
&nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; <span class="kw1">this</span>.<span class="me1">classpathref</span> <span class="sy0">=</span> classpathref<span class="sy0">;</span><br />
&nbsp; <span class="br0">&#125;</span><br />
<br />
&nbsp; <span class="kw1">public</span> <span class="kw4">void</span> execute<span class="br0">&#40;</span><span class="br0">&#41;</span><br />
&nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; loadModules<span class="br0">&#40;</span><span class="br0">&#41;</span><span class="sy0">;</span><br />
&nbsp; &nbsp; <span class="kw1">try</span><br />
&nbsp; &nbsp; <span class="br0">&#123;</span><br />
<span class="br0">&#40;</span>....<span class="br0">&#41;</span><br />
&nbsp; &nbsp; <span class="br0">&#125;</span><br />
&nbsp; &nbsp; <span class="kw1">catch</span> <span class="br0">&#40;</span><a target="blank" href="http://www.google.com/search?hl=en&amp;q=allinurl%3AException+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span class="kw3">Exception</span></a> e<span class="br0">&#41;</span><br />
&nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; e.<span class="me1">printStackTrace</span><span class="br0">&#40;</span><span class="br0">&#41;</span><span class="sy0">;</span><br />
&nbsp; &nbsp; &nbsp; <span class="kw1">throw</span> <span class="kw1">new</span> BuildException<span class="br0">&#40;</span>e<span class="br0">&#41;</span><span class="sy0">;</span><br />
&nbsp; &nbsp; <span class="br0">&#125;</span><br />
&nbsp; <span class="br0">&#125;</span><br />
<br />
&nbsp; <span class="kw1">private</span> <span class="kw4">void</span> loadModules<span class="br0">&#40;</span><span class="br0">&#41;</span><br />
&nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; loader <span class="sy0">=</span> <span class="kw2">null</span><span class="sy0">;</span><br />
&nbsp; &nbsp; <span class="kw1">if</span> <span class="br0">&#40;</span>loaderClassName <span class="sy0">==</span> <span class="kw2">null</span><span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; <span class="kw1">throw</span> <span class="kw1">new</span> BuildException<span class="br0">&#40;</span><span class="st0">&quot;loader can't be null&quot;</span><span class="br0">&#41;</span><span class="sy0">;</span><br />
&nbsp; &nbsp; <span class="kw1">try</span><br />
&nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; <a target="blank" href="http://www.google.com/search?hl=en&amp;q=allinurl%3AClassLoader+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span class="kw3">ClassLoader</span></a> classLoader <span class="sy0">=</span> <span class="kw1">this</span>.<span class="me1">getClass</span><span class="br0">&#40;</span><span class="br0">&#41;</span>.<span class="me1">getClassLoader</span><span class="br0">&#40;</span><span class="br0">&#41;</span><span class="sy0">;</span><br />
&nbsp; &nbsp; &nbsp; <span class="kw1">Class</span> loaderClass <span class="sy0">=</span> classLoader.<span class="me1">loadClass</span><span class="br0">&#40;</span>loaderClassName<span class="br0">&#41;</span><span class="sy0">;</span><br />
&nbsp; &nbsp; &nbsp; loader <span class="sy0">=</span> <span class="br0">&#40;</span>DatabaseModelLoader<span class="br0">&#41;</span> loaderClass.<span class="me1">newInstance</span><span class="br0">&#40;</span><span class="br0">&#41;</span><span class="sy0">;</span><br />
&nbsp; &nbsp; <span class="br0">&#125;</span><br />
&nbsp; &nbsp; <span class="kw1">catch</span> <span class="br0">&#40;</span><a target="blank" href="http://www.google.com/search?hl=en&amp;q=allinurl%3AException+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span class="kw3">Exception</span></a> e<span class="br0">&#41;</span><br />
&nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; <span class="kw1">throw</span> <span class="kw1">new</span> BuildException<span class="br0">&#40;</span>e<span class="br0">&#41;</span><span class="sy0">;</span><br />
&nbsp; &nbsp; <span class="br0">&#125;</span><br />
&nbsp; <span class="br0">&#125;</span><br />
<br />
&nbsp; <span class="coMULTI">/**<br />
&nbsp; &nbsp;* setter for the loader class name property.<br />
&nbsp; &nbsp;* @param dialect The dialect to set.<br />
&nbsp; &nbsp;*/</span><br />
&nbsp; <span class="kw1">public</span> <span class="kw4">void</span> setLoader<span class="br0">&#40;</span><a target="blank" href="http://www.google.com/search?hl=en&amp;q=allinurl%3AString+java.sun.com&amp;btnI=I%27m%20Feeling%20Lucky"><span class="kw3">String</span></a> loader<span class="br0">&#41;</span><br />
&nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; <span class="kw1">this</span>.<span class="me1">loaderClassName</span> <span class="sy0">=</span> loader<span class="sy0">;</span><br />
&nbsp; <span class="br0">&#125;</span><br />
<br />
<span class="br0">&#125;</span>
  </div>
  
  </div>


	<a name='chapter_2'></a>
  <h2>Classpath definition</h2>
	
<p>

  <div class='code-block code-block-fragment'>
  <div class='container'>
  <span class="sc3"><span class="coMULTI">&lt;!-- Replace &quot;value&quot; with your installation's directory --&gt;</span></span><br />
<span class="sc3"><span class="re1">&lt;property</span> <span class="re0">name</span>=<span class="st0">&quot;dependencyfinder.home&quot;</span> <span class="re0">value</span>=<span class="st0">&quot;C:/DependencyFinder&quot;</span><span class="re2">/&gt;</span></span><br />
<br />
<span class="sc3"><span class="re1">&lt;path</span> <span class="re0">id</span>=<span class="st0">&quot;dependencyfinder&quot;</span><span class="re2">&gt;</span></span><br />
&nbsp; &nbsp; <span class="sc3"><span class="re1">&lt;pathelement</span> <span class="re0">location</span>=<span class="st0">&quot;${dependencyfinder.home}/classes&quot;</span><span class="re2">/&gt;</span></span><br />
&nbsp; &nbsp; <span class="sc3"><span class="re1">&lt;pathelement</span> <span class="re0">location</span>=<span class="st0">&quot;${dependencyfinder.home}/lib/DependencyFinder.jar&quot;</span><span class="re2">/&gt;</span></span><br />
&nbsp; &nbsp; <span class="sc3"><span class="re1">&lt;pathelement</span> <span class="re0">location</span>=<span class="st0">&quot;${dependencyfinder.home}/lib/jakarta-oro.jar&quot;</span><span class="re2">/&gt;</span></span><br />
&nbsp; &nbsp; <span class="sc3"><span class="re1">&lt;pathelement</span> <span class="re0">location</span>=<span class="st0">&quot;${dependencyfinder.home}/lib/log4j.jar&quot;</span><span class="re2">/&gt;</span></span><br />
<span class="sc3"><span class="re1">&lt;/path<span class="re2">&gt;</span></span></span><br />
<br />
<span class="sc3"><span class="re1">&lt;taskdef</span> <span class="re0">resource</span>=<span class="st0">&quot;dependencyfindertasks.properties&quot;</span><span class="re2">&gt;</span></span><br />
&nbsp; &nbsp; <span class="sc3"><span class="re1">&lt;classpath</span> <span class="re0">refid</span>=<span class="st0">&quot;dependencyfinder&quot;</span><span class="re2">/&gt;</span></span><br />
<span class="sc3"><span class="re1">&lt;/taskdef<span class="re2">&gt;</span></span></span>
  </div>
  
  </div>
</p>


	<a name='chapter_3'></a>
  <h2>Erreur \"unable to find a javac compiler\"</h2>
	
<p>
La solution est de prendre le fichier tools.jar qui se trouve dans le dossier lib du jdk et de le copie dans le dossier lib/ext du JRE. 
</p>
    ]]></content>
  </entry>
</feed>
