Kalde ant task indeholdende antcontrib tags fra java
jeg har følgende javakode:DefaultLogger log = new DefaultLogger();
log.setErrorPrintStream(System.err);
log.setOutputPrintStream(System.out);
log.setMessageOutputLevel(Project.MSG_INFO);
try{
Project ant = new Project();
ant.addBuildListener(log);
ProjectHelper helper = new ProjectHelperImpl();
ant.init();
helper.parse(ant, new File("c:\\test\\build.xml"));
ant.setProperty("project",filesToGet);
ant.executeTarget("getFile");
}catch(Exception e){
e.printStackTrace();
}
Jeg har brugt denne stump code flere gange og den er ganske god til at kalde targets i en ant build fil.
Men mit problem er nu at jeg bruger AntContrib i min build fil. og det er som om den så ikke kan finde ud af de tags der følger med antContrib.
i starten af min ant build fil står følgende:
<taskdef resource="net/sf/antcontrib/antlib.xml">
<classpath>
<pathelement location="includeFiles/ant-contrib.jar" />
</classpath>
</taskdef>
mit target ser ud således
<target name="getFile">
linie 233 <if>
linie 234 ...some code
linie 235 <then>
linie 236 ...some code
linie 237 </then>
linie 238 </if>
</target>
hvis jeg kalder build files fra en dos prompt kører det hele fint, men når jeg kalder det fra java så kommer den med følgende fejl:
C:\test\build.xml:233: java.lang.NullPointerException
så der kommer en NullPointerException ved det første if tag? hvordan kan det være? og hvordan løser jeg mit problem?