bin.includes = plugin.xml,\
               plugin.properties,\
               about.html,\
               *.jar,\
               .options
javadoc.packages = org.eclipse.jdt.core.*,\
                   org.eclipse.jdt.core.eval.*,\
                   org.eclipse.jdt.core.jdom.*,\
                   org.eclipse.jdt.core.search.*
source.jdtcore.jar = ant/,\
                     batch/,\
                     codeassist/,\
                     compiler/,\
                     eval/,\
                     formatter/,\
                     jdom/,\
                     model/,\
                     search/
