I am fairly new to Nant but have been able to create some basic Nant scripts for my large solution. I used Gordon Weakliem XSLT doc along with XSLTTransformerMG by Michael Gold to create basic scrips from my vbproj files. I found the missing imports statements that the XSLT doesn't get and added them as well. I am unfortunaltely now failing each build with a  [vbc] vbc : Command line error BC2010 : compilation failed : '0xC0000005'. Here is the script:
 
<?xml version="1.0" encoding="utf-8" ?>
<project default="build" name="MyProjectEnterpriseDataAccessLayer" xmlns=" http://nant.sf.net/release/0.85-rc3/nant.xsd">
 <property name="debug" value="false" />
 <property name="dir.output" value=".\bin" />
 <property name=" dir.lib" value="..\lib" />
 <property name="dir.dist" value="..\dist" />
 <property name="dir.MSEnterpriseLibrary" value="D:\Program Files\Microsoft Enterprise Library June 2005\bin" />
 <property name="target.type" value="library"></property>
 <property name="project.FormalName" value="MyProjectEnterpriseDataAccessLayer" />
 <target name="init" description="Initialize properties for the build" depends="init-Debug,init-Release">
  <tstamp />
  <mkdir dir="${dir.output}" />
  <mkdir dir="${dir.lib}" />
  <mkdir dir="${dir.lib}" />
  <mkdir dir="${dir.dist}" />
  <property name="project.output" value="${project.FormalName}.dll" />
  <property name="dist.name" value="${dir.dist}\${project.FormalName}" />
  <property name="vbc.optionCompare" value="Binary" />
  <property name="vbc.optionExplicit" value="true"></property>
  <property name="vbc.optionStrict " value="true"></property>
  <property name="rootNamespace" value="MyCompany" />
 </target>
 <target name="init-Debug" if="${debug}">
  <property name="define" value="" />
  <property name="optimize" value="false" />
  <property name="incremental" value="true" />
  <property name="unsafe" value="/unsafe-"></property>
  <property name="debug" value="true" />
  <property name="removeintchecks" value="false" />
 </target>
 <target name="init-Release" unless="${debug}">
  <property name="define" value="" />
  <property name="optimize" value="true" />
  <property name="incremental" value="false" />
  <property name="unsafe" value="/unsafe-"></property>
  <property name="debug" value="false" />
  <property name="removeintchecks" value="false" />
 </target>
 <target name="compile" description="Compile project" depends="init">
  <vbc target="${ target.type}" output="${dir.output}\${project.output}" debug="${debug}"
   define="${define}" optioncompare="${vbc.optionCompare}" optionexplicit="${vbc.optionExplicit}"
   optionstrict="${vbc.optionStrict}" removeintchecks="${removeintchecks}" rootnamespace="${rootNamespace}">
   <imports>
    <import namespace="Microsoft.VisualBasic " />
    <import namespace="System" />
    <import namespace="System.Collections" />
    <import namespace="System.Data" />
    <import namespace=" System.Diagnostics" />
   </imports>
   <sources>
    <include name="AssemblyInfo.vb" />
    <include name="MyProjectEnterpriseDataAccessLayer.vb" />
   </sources>
   <references>
    <include name="System.dll" />
    <include name="System.Data.dll" />
    <include name="System.Xml.dll" />
    <include name="${ dir.lib}/MyProject DB Translator Interface.dll" />
    <include name="${dir.lib}/MyProjectDocumentStructures.dll" />
    <include name="${dir.lib}/MyProjectMasterSharedLibrary.dll" />
    <include name="${dir.MSEnterpriseLibrary}/Microsoft.Practices.EnterpriseLibrary.Data.dll" />
    <include name="${dir.MSEnterpriseLibrary}/Microsoft.Practices.EnterpriseLibrary.Configuration.dll" />
    <include name="${dir.MSEnterpriseLibrary}/Microsoft.Practices.EnterpriseLibrary.Data.DB2.dll" />
    <include name="${dir.MSEnterpriseLibrary}/Microsoft.Practices.EnterpriseLibrary.Common.dll" />
   </references>
  </vbc>
 </target>
 <target name="build" description="Do an incremental build" depends="init,compile,test">
  <copy file="${dir.output }\${project.output}" todir="${dir.lib}" />
 </target>
 <target name="test" depends="init,compile"></target>
 <target name="clean" depends="init" description="Delete output of a build">
  <delete file="${dir.output}\${project.output}" verbose="true" failonerror="false" />
  <delete file="${dir.output}\${project.FormalName}.pdb" verbose="true" failonerror="false" />
  <delete file="${doc}" verbose="true" failonerror="false" />
 </target>
</project>
 
I have verified that every reference is there and would assume if something wasn't, I would get a more descriptive error. I added the verbose=true option to vbc and got the following output:
 

MyProjectEnterpriseDataAccessLayer:

     [nant] E:\My Documents\Visual Studio Projects\MyProject\Project\MyProjectEnterpriseDataAccessLayer\MyProjectEnterpriseDataAccessLayer.build
            Buildfile: file:///E:/My Documents/Visual Studio Projects/MyProject/Project/MyProjectEnterpriseDataAccessLayer/MyProjectEnterpriseDataAccessLayer.build
            Target framework: Microsoft .NET Framework 1.1
            Target(s) specified: build


            init-Release:


            init:

               [tstamp] Thursday, September 15, 2005 12:33:39 PM.

            compile:

                  [vbc] 'E:\My Documents\Visual Studio Projects\MyProject\Project\MyProjectEnterpriseDataAccessLayer\MyProjectEnterpriseDataAccessLayer.vb' has been updated, recompiling.
                  [vbc] Compiling 2 files to 'E:\My Documents\Visual Studio Projects\MyProject\Project\MyProjectEnterpriseDataAccessLayer\bin\MyProjectEnterpriseDataAccessLayer.dll'."
                  [vbc] Contents of D:\DOCUME~1\jshank\LOCALS~1\Temp\tmp2947.tmp.
                  [vbc] "/imports:Microsoft.VisualBasic,System,System.Collections,System.Data,System.Diagnostics"
                  [vbc] "/optioncompare:Binary"
                  [vbc] /optionexplicit
                  [vbc] /optionstrict
                  [vbc] "/rootnamespace:MyCompany"
                  [vbc] /nologo
                  [vbc] "/target:library"
                  [vbc] "/out:E:\My Documents\Visual Studio Projects\MyProject\Project\MyProjectEnterpriseDataAccessLayer\bin\MyProjectEnterpriseDataAccessLayer.dll"
                  [vbc] "/reference:E:\My Documents\Visual Studio Projects\MyProject\Project\lib\MyProject DB Translator Interface.dll"
                  [vbc] "/reference:E:\My Documents\Visual Studio Projects\MyProject\Project\lib\MyProjectDocumentStructures.dll"
                  [vbc] "/reference:E:\My Documents\Visual Studio Projects\MyProject\Project\lib\MyProjectMasterSharedLibrary.dll"
                  [vbc] "/reference:D:\Program Files\Microsoft Enterprise Library June 2005\bin\Microsoft.Practices.EnterpriseLibrary.Common.dll"
                  [vbc] "/reference:D:\Program Files\Microsoft Enterprise Library June 2005\bin\Microsoft.Practices.EnterpriseLibrary.Configuration.dll"
                  [vbc] "/reference:D:\Program Files\Microsoft Enterprise Library June 2005\bin\Microsoft.Practices.EnterpriseLibrary.Data.DB2.dll"
                  [vbc] "/reference:D:\Program Files\Microsoft Enterprise Library June 2005\bin\Microsoft.Practices.EnterpriseLibrary.Data.dll"
                  [vbc] "/reference:D:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\System.dll"
                  [vbc] "/reference:D:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\System.Data.dll"
                  [vbc] "/reference:D:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\System.Xml.dll"
                  [vbc] "E:\My Documents\Visual Studio Projects\MyProject\Project\MyProjectEnterpriseDataAccessLayer\AssemblyInfo.vb"
                  [vbc] "E:\My Documents\Visual Studio Projects\MyProject\Project\MyProjectEnterpriseDataAccessLayer\MyProjectEnterpriseDataAccessLayer.vb"
                  [vbc]
                  [vbc] Starting 'D:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\vbc.exe (@"D:\DOCUME~1\jshank\LOCALS~1\Temp\tmp2947.tmp")' in 'E:\My Documents\Visual Studio Projects\MyProject\Project\MyProjectEnterpriseDataAccessLayer'
                  [vbc] vbc : Command line error BC2010 : compilation failed : '0xC0000005'

            BUILD FAILED

            E:\My Documents\Visual Studio Projects\MyProject\Project\MyProjectEnterpriseDataAccessLayer\MyProjectEnterpriseDataAccessLayer.build(40,4):
            External Program Failed: D:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\vbc.exe (return code was 1)

            Total time: 0.3 seconds.


BUILD FAILED

My code compiles perfectly in the IDE but I would really like to start using Nant instead. Any suggestions would be appreciated.

 

Reply via email to