在我的机器我安装VSeWSS的1.3和配置的本地IIS 6,这样我可以建立我的SharePoint项目和部署 生成WSP文件到本地机器。 所述WSP文件由包装步骤,这是我可以成功地在其它机器上安装产生。
现在我有我的项目迁移到其目前没有的SharePoint安装和未配置为VSeWSS的(没有VSeWSS的Web服务端点) 我们的构建机器 。 有没有一种方法,而无需在构建机上配置IIS与SharePoint和VSeWSS的使用自动化WSP文件的建设?
一些书籍描述了使用MAKECAB.EXE和定义DDF文件的手动工序 ,但我没有看到VSeWSS的 (被它也许在这我可以用它来配置我的自动化构建过程中的TEMP文件夹中生成产生的任何DDF文件 ?)。
我刚刚遇到了同样的问题。 我选择了另一种工具开发的整体解决方案:我发现WSPBuilder
更清洁,更少侵入。 它也可以在命令行中,这是伟大的编译文件中使用。
我修改通过创建一些南特脚本胆红素Simser为了编译和部署项目和代码VSeWSS的移动WSPBuilder。 它的工作原理就像无论是在我的机器或构建机器上的魅力。
你可以找到WSPBuilder http://www.Codeplex.com ,并将这些目标需要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>