title: ANT - javac compile failure due to cannot find symbol
body: <p>I'm trying to compile ActionFactory.java file which imports one of my package, RegisterAction.java</p>
  
  <p>Here is the file structure:</p>
  
  <p>/com/masatosan/actions/register/RegisterAction.java</p>
  
  <p>/com/masatosan/redirector/ActionFactory.java</p>
  
  <p>According to the ANT output, I think ANT cannot find RegisterAction.java which is imported in ActionFactory.java</p>
  
  <p>It does compile successfully when I manually run javac on console so this must be some classpath setting that ANT is not looking at. </p>
  
  <p>I know I can add some jar to ANT_HOME/lib but in my case, ANT seems not be able to find ActionRegister.java, not jar or something else. Could anyone help me find out what's wrong?</p>
  
  <p><strong>ANT script</strong></p>
  
  <pre><code>&lt;project name="CompileMasatosan"  default="main"
      basedir="C:\Program Files\Apache Software Foundation\Tomcat 6.0\webapps\head_first\src\com\masatosan"&gt;
      &lt;description&gt;
          masatosan compiler
      &lt;/description&gt;
  
      &lt;!-- this invokes all targets --&gt;
      &lt;target name="main" depends="compileAll" /&gt;
  
       &lt;!-- properties --&gt;
      &lt;property name="srcMasatosan" 
          location="C:\Program Files\Apache Software Foundation\Tomcat 6.0\webapps\head_first\src\com\masatosan" /&gt;
  
      &lt;property name="dest"
      location="C:\Program Files\Apache Software Foundation\Tomcat 6.0\webapps\head_first\WEB-INF\classes" /&gt;
  
      &lt;property name="redirectorSrc" location="${srcMasatosan}\redirector" /&gt;
  
       &lt;!-- complie --&gt;
      &lt;target name="compileAll"&gt;
          &lt;javac target="1.5" source="1.5" srcdir="${redirectorSrc}" destdir="${dest}" /&gt;
      &lt;/target&gt;
  
  &lt;/project&gt;
  </code></pre>
  
  <p><strong>Environment Variable</strong></p>
  
  <pre><code>ANT_HOME=C:\apache-ant-1.8.1-bin\apache-ant-1.8.1
  
   CLASSPATH=C:\Program Files\Java\jre6\bin;C:\Program Files\Apache Software Foundation\Tomcat 6.0\lib;C:\Program Files\Java\jre6\bin;C:\P
  rogram Files\Apache Software Foundation\Tomcat 6.0\lib\mail.jar;C:\Program Files\Apache Software Foundation\Tomcat 6.0\lib;C:\Program F
  iles\Java\jre6\bin;C:\Program Files\Apache Software Foundation\Tomcat 6.0\webapps\head_first\src\com\masatosan\actions\register;
  </code></pre>
  
  <p><strong>ActionFactory.java</strong></p>
  
  <pre><code>package com.masatosan.redirector;
  import com.masatosan.actions.register.RegisterAction;
  
  public class ActionFactory {
  //some code here...
  
  }
  </code></pre>
  
  <p><strong>ANT output</strong></p>
  
  <pre><code>C:\apache-ant-1.8.1-bin\javac_masatosan\debug&gt;ant
  Buildfile: C:\apache-ant-1.8.1-bin\javac_masatosan\debug\build.xml
  
  compileAll:
      [javac] C:\apache-ant-1.8.1-bin\javac_masatosan\debug\build.xml:47: warning: 'includeantruntime' was not set, defaulting to build.s
  ysclasspath=last; set to false for repeatable builds
      [javac] Compiling 4 source files to C:\Program Files\Apache Software Foundation\Tomcat 6.0\webapps\head_first\WEB-INF\classes
      [javac] C:\Program Files\Apache Software Foundation\Tomcat 6.0\webapps\head_first\src\com\masatosan\redirector\ActionFactory.java:1
  5: cannot find symbol
      [javac] symbol  : class RegisterAction
      [javac] location: package com.masatosan.actions.register
      [javac] import com.masatosan.actions.register.RegisterAction;
      [javac]                                      ^
      [javac] C:\Program Files\Apache Software Foundation\Tomcat 6.0\webapps\head_first\src\com\masatosan\redirector\ActionFactory.java:2
  4: cannot find symbol
      [javac] symbol  : class RegisterAction
      [javac] location: class com.masatosan.redirector.ActionFactory
      [javac]             actions.put("POST/process_register.do", new RegisterAction());
      [javac]                                                         ^
      [javac] 2 errors
  
  BUILD FAILED
  C:\apache-ant-1.8.1-bin\javac_masatosan\debug\build.xml:47: Compile failed; see the compiler error output for details.
  </code></pre>