ant-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Ego <>
Subject Newbie: <javac> task can't find my source files
Date Sat, 20 Aug 2011 13:02:08 GMT
I've read thoroughly the manual and examples but still can't find the reason for this behavior.
First, some pointers to state my case.

- Environment: Windows XP SP3, Ant 1.8.1, jdk1.6.0_02

- My project builds and run fine from the cmdline, provided that the CLASSPATH env. variable
is set. I can even get a working jar executable from it, so the manifest file (created manually)
is also ok. So I tried to repeat the development & deployment process using Ant.

First, I deleted the CLASSPATH env variable to avoid problems. Rebooted my system.
This is my package structure (relative paths):

[root.dir]\ant builfiles\            //contains the xml buildfiles for my projects
[root.dir]\projects\modules\src\packages\    // source code for general purpose auxiliary

                        // classes, w/ subpackages

[root.dir]\projects\modules\src\apps\        // source code for the actual project classes

[root.dir]\projects\modules\src\resources\    // icons and other files required by projects

[root.dir]\projects\WEB-INF\build\        // destdir for the <javac> task
[root.dir]\projects\WEB-INF\dist\        // destdir for the <jar> task

Both the build.xml and files are located in the "ant buildfiles" folder.
The following is the file:

jar-classpath=.\\gdv.jar            // the double backslash is an escape sequence
                        // and it works fine (more details later)
and this is build.xml file:

<?xml version="1.0"?>
<project name="gdv" default="run">
<property file=""/>

    <target name="clean">   
        <delete dir="${build.dir}"/>
        <delete dir="${dist.dir}"/>        
    <target name="init" depends="clean">
    <echo>Creating the build directories</echo>
    <mkdir dir="${build.dir}"/>
    <mkdir dir="${dist.dir}"/>
<!-- this section is an alternate method to include resource files:    
    <copy todir="${build.dir}/resources">
    <fileset dir="${src.dir}/resources"/>
Basically is a workaround to get a jar file containing the resource files and a valid manifest
despite the whenmanifestonly="skip" property set in the <jar> task. I inspected the
resulting manifest file and found it exactly as expected. Manifest and resources are present,
the packages with the bytecode obviously not (compilation fails).


    <target name="compile" depends="init">
         <javac sourcepath="${src.dir}" srcdir="${src.dir}"
               <compilerarg value="-Xlint:unchecked"/>
               <compilerarg value="-Xlint:deprecated"/>
               <compilerarg value="-g"/>
               <include name="${src.dir}/packages/sde/actor"/>
               <include name="${src.dir}/packages/sde/semaphore"/>
               <include name="${src.dir}/packages/sde/monitor"/>
               <include name="${src.dir}/packages/synch"/>
               <include name="${src.dir}/apps/gdv/v1_0_0"/>
               <include name="${src.dir}/resources/gdv/icons"/>

    <target name="jar" depends="compile">
        <jar destfile="${dist.dir}/${}.jar" 
        <attribute name="Main-Class" value="${main-class}"/>
        <attribute name="Classpath" value="${jar-classpath}"/>
            <!-- Who is building this jar? -->
            <attribute name="Built-By" value="${}"/>
            <!-- Information about the program itself -->
            <attribute name="Implementation-Vendor" value="Bogus Inc."/>
            <attribute name="Implementation-Title" value="gdv"/>
            <attribute name="Implementation-Version" value="1.0.0"/>
            <!-- details -->
        <attribute name="Sealed" value="false"/>

    <target name="run" depends="jar">
        <java jar="${dist.dir}/${}.jar" fork="true"/>


Finally, here's the verbose output of the ant command:

Apache Ant version 1.8.1 compiled on April 30 2010
Trying the default build file: build.xml
Buildfile: D:\Workspaces\Java\ant buildfiles\build.xml
Detected Java version: 1.6 in: C:\Programmi\Java\jdk1.6.0_02\jre
Detected OS: Windows XP
parsing buildfile D:\Workspaces\Java\ant buildfiles\build.xml with URI = file:/D:/Workspaces/Java/ant%20buildfiles/build.xml
Project base dir set to: D:\Workspaces\Java\ant buildfiles
parsing buildfile jar:file:/C:/apache-ant-1.8.1/lib/ant.jar!/org/apache/tools/ant/antlib.xml
with URI = jar:file:/C:/apache-ant-1.8.1/lib/ant.jar!/org/apache/tools/ant/antlib.xml from
a zip file
 [property] Loading D:\Workspaces\Java\ant buildfiles\
Build sequence for target(s) `run' is [clean, init, compile, jar, run]
Complete build sequence is [clean, init, compile, jar, run, ]

   [delete] Deleting directory D:\Workspaces\Java\projects\WEB-INF\build
   [delete] Deleting directory D:\Workspaces\Java\projects\WEB-INF\build
   [delete] Deleting directory D:\Workspaces\Java\projects\WEB-INF\dist
   [delete] Deleting directory D:\Workspaces\Java\projects\WEB-INF\dist

     [echo] Creating the build directories
    [mkdir] Created dir: D:\Workspaces\Java\projects\WEB-INF\build
    [mkdir] Created dir: D:\Workspaces\Java\projects\WEB-INF\dist

    [javac] No sources found.

      [jar] Warning: skipping jar archive D:\Workspaces\Java\projects\WEB-INF\dist\gdv.jar
because no files were included.
      [jar] Warning: skipping jar archive D:\Workspaces\Java\projects\WEB-INF\dist\gdv.jar
because no files were included.

     [java] Executing 'C:\Programmi\Java\jdk1.6.0_02\jre\bin\java.exe' with arguments:
     [java] '-jar'
     [java] 'D:\Workspaces\Java\projects\WEB-INF\dist\gdv.jar'
     [java] The ' characters around the executable and arguments are
     [java] not part of the command.
     [java] Unable to access jarfile D:\Workspaces\Java\projects\WEB-INF\dist\gdv.jar

Total time: 5 seconds

I apologize for this long, boring report, I hope you find the time to read it entirely. 
Any help will be greatly appreciated, thanks in advance for your patience.

To unsubscribe, e-mail:
For additional commands, e-mail:

View raw message