2009-08-13 57 views
2

建设WSP文件在我的机器我安装VSeWSS的1.3和配置的本地IIS 6,这样我可以建立我的SharePoint项目和部署生成WSP文件保存到本地机。 WSP文件由Packaging步骤生成,我可以在其他机器上成功安装。在构建机器

现在我必须我的项目迁移到其目前没有的SharePoint安装和未配置为VSeWSS的(没有VSeWSS的Web服务端点)我们的构建机器有没有办法使WSP文件的构建自动化,而无需在构建计算机上配置IIS以用于SharePoint和VSeWSS?

有的书介绍使用MAKECAB.EXE和定义DDF文件的手动工序,但我没有看到VSeWSS的(是否可能在TEMP产生生成的任何DDF文件我可以用来配置我的自动构建过程?)。

+0

它看起来像它是由生成步骤手工建立DDF文件时产生可能是有用的的PKG文件夹的内容。 – 2009-08-13 22:30:25

回答

5

我刚刚面临同样的问题。我选择了另一种开发整个解决方案的工具:我发现它更干净,侵扰性更小。它也可以在命令行中使用,这非常适合构建文件。

我修改了一些由Bil Simser创建的Nant脚本,以便编译和部署项目并将代码从VSeWSS移动到WSPBuilder。它在我的机器或构建机器上就像一个魅力。

你可以在http://www.Codeplex.com上找到WSPBuilder,这些目标需要nantContrib(在www.tigris.org)才能工作。

下面是一些我使用的目标:

<target name="build" depends="compile"> 
    <copy todir="${build.dir}\12\"> 
    <fileset basedir="${sharepoint.dir}\12"> 
     <include name="**/*"/> 
    </fileset> 
    </copy> 
    <copy 
    file="${sharepoint.dir}\solutionid.txt" 
    tofile="${build.dir}\solutionid.txt" 
    /> 
    <call target="buildsolutionfile" /> 
</target> 



<target name="buildsolutionfile"> 
    <exec program="${wspbuilder.exe}" workingdir="${build.dir}"> 

     <arg value="-BuildDDF"/> 
     <arg value="${debug}"/> 

     <arg value="-Cleanup"/> 
     <arg value="false"/> 

     <arg value="-FolderDestination"/> 
     <arg value="${build.dir}"/> 

     <arg value="-Outputpath"/> 
     <arg value="${build.dir}"/> 

     <arg value="-TraceLevel"/> 
     <arg value="verbose"/> 
    </exec> 
    <copy 
     file="${build.dir}\${package.file}" 
     tofile="${solution.dir}\${package.file}"/> 
    </target> 



<target name="addsolution"> 
    <exec program="${stsadm.exe}" verbose="${verbose}"> 
     <arg value="-o" /> 
     <arg value="addsolution" /> 
     <arg value="-filename" /> 
     <arg value="${solution.dir}\${package.file}" /> 
    </exec> 
    <call target="spwait" /> 
    </target> 

    <target name="spwait" description="Waits for the timer job to complete."> 
    <exec program="${stsadm.exe}" verbose="${verbose}"> 
     <arg value="-o" /> 
     <arg value="execadmsvcjobs" /> 
    </exec> 
    </target> 
    <target name="app.pool.reset" description="Resets Sharepoint's application pool."> 
    <iisapppool action="Restart" pool="${apppool}" server="${server}" /> 
    </target> 
    <target name="deploysolution" depends="addsolution"> 
    <exec program="${stsadm.exe}" workingdir="${build.dir}" verbose="${verbose}"> 
     <arg value="-o" /> 
     <arg value="deploysolution" /> 
     <arg value="-name" /> 
     <arg value="${package.file}" /> 
     <arg value="-immediate" /> 
     <arg value="-allowgacdeployment" /> 
     <arg value="-allcontenturls" /> 
     <arg value="-force" /> 
    </exec> 
    <call target="spwait" /> 
    <call target="app.pool.reset" /> 

    </target> 
+2

WSP Builder是快速,干净和实用的文件 – Kusek 2009-08-14 03:36:59

+1

+1目标文件的绝佳示例! – Colin 2009-08-14 07:41:35

相关问题