2 Replies Latest reply: Dec 12, 2012 11:18 AM by MritunjayKumarAnr
MritunjayKumarAnr Level 1 Level 1 (0 points)

When I am trying to build my project,build fails notifying that "

BUILD FAILED

C:\ers_new\Empsoft\build.xml:203: taskdef class org.objectstyle.woproject.ant.WOCompile cannot be found
" I have added woproject.jar inside eclipse plugins,but its not working.

 

I am using eclipse version=Indigo Service Release 1

 

 

My build.xml is:-

 

 

<project

name="Empsoft" default="build" basedir=".">  <target name="build" depends="init.build,build.woapp,javaclient,ssdd,war,split,package" />   <target name="install" depends="init.install,build.woapp,javaclient,ssdd,war,split,package" />   <target name="clean" depends="init.properties">  <delete dir="bin" />  <delete dir="dist" />  </target>   <!-- basic initializations -->  <target name="init.install" depends="init.properties">  <tstamp />  <property name="dest.dir" value="${wo.apps.root}" />  </target>   <target name="init.build" depends="init.properties">  <tstamp />  <property name="dest.dir" value="dist" />  </target>   <!-- property determination -->  <target name="init.properties">  <property file="build.properties" />   <property name="wolips.properties" value="wolips.properties" />  <property file="${wolips.properties}" />  <condition property="wo.properties.check.failed">  <not>  <and>  <isset property="wo.system.frameworks" />  <isset property="wo.local.frameworks" />  </and>  </not>  </condition>  <fail message="The properties 'wo.system.frameworks' and 'wo.local.frameworks' must be set. Check that your ${wolips.properties} is correct." if="wo.properties.check.failed" />   <property name="build.app.name" value="${project.name}" />  <property name="build.app.name.lowercase" value="${project.name.lowercase}" />  </target>   <!-- This copies webserver resources from app.woa's embedded frameworks into split install bundle -->  <target name="split" description="Adds embedded framework webserver resources to the split install bundle by copying from deployment build bundle" unless="servletDeployment">  <property name="wsdest.dir" value="${dest.dir}/Split" />  <mkdir dir="${wsdest.dir}"/>  <copy todir="${wsdest.dir}/WebObjects/${build.app.name}.woa" verbose="true">  <fileset dir="${dest.dir}/${build.app.name}.woa/Contents">  <include name="Frameworks/*.framework/WebServerResources/**"/>  </fileset>  <fileset dir="${dest.dir}/${build.app.name}.woa">  <include name="Contents/WebServerResources/**"/>  </fileset>  </copy>  </target>   <target name="package" unless="servletDeployment">  <tar destfile="${dest.dir}/${build.app.name}-Application.tar.gz"  compression="gzip"  longfile="gnu">  <tarfileset dir="${dest.dir}" mode="750">  <include name="${build.app.name}.woa/${build.app.name}"/>  </tarfileset>  <tarfileset dir="${dest.dir}">  <exclude name="${build.app.name}.woa/${build.app.name}"/>  <include name="${build.app.name}.woa/**"/>  </tarfileset>  </tar>  <tar destfile="${dest.dir}/${build.app.name}-WebServerResources.tar.gz"  compression="gzip"  basedir="${wsdest.dir}/WebObjects"  longfile="gnu"  includes="${build.app.name}.woa/**">  </tar>  </target>   <!-- woproject tasks -->  <target name="build.woapp" depends="compile">  <taskdef name="woapplication" classname="org.objectstyle.woproject.ant.WOApplication"/>   <woapplication name="${build.app.name}" frameworksBaseURL="/WebObjects/${build.app.name}.woa/Frameworks" destDir="${dest.dir}" customInfoPListContent="${customInfoPListContent}" principalClass="${principalClass}" webXML="${webXML}" webXML_CustomContent="${webXML_CustomContent}" servletAdaptor="com.webobjects.jspservlet.WOServletAdaptor">  <classes dir="${classes.dir}">  <includesfile name="woproject/classes.include.patternset" />  <excludesfile name="woproject/classes.exclude.patternset" />  <exclude if="javaClient" name="**/client/**/*.*"/>  </classes>   <wsresources dir=".">  <includesfile name="woproject/wsresources.include.patternset" />  <excludesfile name="woproject/wsresources.exclude.patternset" />  </wsresources>   <resources dir=".">  <includesfile name="woproject/resources.include.patternset" />  <excludesfile name="woproject/resources.exclude.patternset" />  <exclude if="javaClient" name="**/client/**/*.*"/>  </resources>   <frameworks root="ProjectLocal" embed="${embed.ProjectLocal}" eclipse="true" />  <frameworks root="External" embed="${embed.External}" eclipse="true" />  <frameworks root="Local" embed="${embed.Local}" eclipse="true" />  <frameworks root="User" embed="${embed.User}" eclipse="true" />  <frameworks root="System" embed="${embed.System}" eclipse="true" />  <frameworks root="Network" embed="${embed.Network}" eclipse="true" />   <lib dir="Libraries">  <include name="*.jar" />  </lib>  </woapplication>  </target>   <target name="javaclient" if="javaClient" depends="build.woapp">  <mkdir dir="${dest.dir}/${build.app.name}.woa/Contents/WebServerResources/Java" />  <jar basedir="${classes.dir}" excludes="**/server/**/*.*, **/server/**/" jarfile="${dest.dir}/${build.app.name}.woa/Contents/WebServerResources/Java/${build.app. name}.jar"/>  </target>   <target name="war" if="servletDeployment" depends="ssdd">  <war destfile="${dest.dir}/${build.app.name}.war" webxml="${dest.dir}/${build.app.name}/WEB-INF/web.xml">  <fileset dir="${dest.dir}/${build.app.name}">  <include name="**" />  </fileset>  </war>  </target>   <!-- To use this target 

 

1) create the LICENSE in your project directory

2) add JavaWOJSPServlet in your WOFrameworks build path

3) set servlet deployment to true in WOLips Properties

-->

  <target name="ssdd" if="servletDeployment" depends="build.woapp">  <mkdir dir="${dest.dir}/${build.app.name}/WEB-INF/classes" />  <mkdir dir="${dest.dir}/${build.app.name}/WEB-INF/tlds" />  <copy todir="${dest.dir}/${build.app.name}/WEB-INF/">  <fileset dir="${dest.dir}/${build.app.name}.woa/Contents/">  <include name="web.xml" />  </fileset>  </copy>  <copy todir="${dest.dir}/${build.app.name}/WEB-INF/">  <fileset dir="..">  <include name="LICENSE" />  </fileset>  </copy>  <copy todir="${dest.dir}/${build.app.name}/WEB-INF/">  <fileset dir="${dest.dir}">  <include name="${build.app.name}.woa/**" />  </fileset>  </copy>  <!-- copy the frameworks to the WEBINFROOT/Library directory -->  <copy todir="${dest.dir}/${build.app.name}/WEB-INF/">  <fileset dir="${dest.dir}/${build.app.name}.woa/Contents">  <include name="Library/**" />  </fileset>  </copy>  <copy todir="${dest.dir}/${build.app.name}/WEB-INF/">  <fileset dir="${dest.dir}/${build.app.name}.woa">  <include name="Resources/**" />  </fileset>  </copy>  <copy todir="${dest.dir}/${build.app.name}/WEB-INF/lib/">  <fileset dir="${dest.dir}/${build.app.name}/WEB-INF">  <include name="**/Resources/**/*.jar" />  </fileset>  <mapper type="flatten" />  </copy>   <!-- Get the necessary Frameworks from the webobjects system root instead of the project wrapper -->  <copy todir="${dest.dir}/${build.app.name}/WEB-INF/lib" file="${wo.system.frameworks}/JavaWOJSPServlet.framework/WebServerResources/Java/Java WOJSPServlet_client.jar" />   <copy todir="${dest.dir}/${build.app.name}/WEB-INF/tlds">  <fileset dir="${wo.system.frameworks}/JavaWOJSPServlet.framework/Resources/">  <include name="WOtaglib_1_0.tld" />  </fileset>  </copy>   <!-- the WebObject Extensions -->  <copy todir="${dest.dir}/${build.app.name}/WEB-INF/lib">  <fileset dir="${wo.extensions}">  <include name="*.jar" />  <exclude name="servlet.jar" />  </fileset>  <mapper type="flatten" />  </copy>   <!-- the Java Client Client-Side Classes -->  <copy todir="${dest.dir}/${build.app.name}/WEB-INF/${build.app.name}.woa/Contents/WebServerR esources/Java">  <fileset dir="${wo.local.frameworks}">  

 

<include name="**/WebServerResources/Java/*.jar"/>

</fileset>

<mapper type="flatten"/>  </copy>   <!-- fix the Macos*ClassPath.txt files -->  <replaceregexp file="${dest.dir}/${build.app.name}/WEB-INF/${build.app.name}.woa/Contents/MacOS/MacO SClassPath.txt" match="APPROOT/Resources/Java/${build.app.name.lowercase}.jar" replace="APPROOT/${build.app.name}.woa/Contents/Resources/Java/${build.app.name.lowercas e}.jar" byline="true" />  <replaceregexp file="${dest.dir}/${build.app.name}/WEB-INF/${build.app.name}.woa/Contents/MacOS/MacO SXServerClassPath.txt" match="APPROOT/Resources/Java/${build.app.name.lowercase}.jar" replace="APPROOT/${build.app.name}.woa/Contents/Resources/Java/${build.app.name.lowercas e}.jar" byline="true" />   <!-- fix the web.xml file: the app itself needs build.app.name/Contents -->  <replaceregexp file="${dest.dir}/${build.app.name}/WEB-INF/web.xml" match="WEBINFROOT/Resources/Java/${build.app.name.lowercase}.jar" replace="WEBINFROOT/${build.app.name}.woa/Contents/Resources/Java/${build.app.name.lower case}.jar" byline="true" />   <!-- fix the web.xml file to remove the extra Frameworks/ directory level for the frameworks -->  <replaceregexp file="${dest.dir}/${build.app.name}/WEB-INF/web.xml" match="WEBINFROOT/Frameworks//" replace="WEBINFROOT/" byline="true" />  </target>   <target name="compile" depends="init.properties">  <taskdef name="wocompile" classname="org.objectstyle.woproject.ant.WOCompile" />   <mkdir dir="bin" />  <wocompile srcdir="Sources" destdir="bin">  <frameworks root="ProjectLocal" embed="false" eclipse="true" />  <frameworks root="External" embed="false" eclipse="true" />  <frameworks root="Local" embed="false" eclipse="true" />  <frameworks root="User" embed="false" eclipse="true" />  <frameworks root="System" embed="false" eclipse="true" />  <frameworks root="Network" embed="false" eclipse="true" />  <classpath>  <fileset dir="Libraries">  <include name="*.jar" />  </fileset>  <fileset dir="${wo.extensions}">  <include name="*.jar" />  </fileset>  </classpath>  </wocompile>  </target> 

 

</project>

 

Please let me know where i m going wrong.


Windows 7, Eclips indigo