2

開発マシンにVSeWSS 1.3をインストールし、ローカル IIS 6 を構成して、SharePoint プロジェクトをビルドし生成された WSPファイルをローカル マシンに展開できるようにしました。WSP ファイルはパッケージングのステップで生成され、他のマシンに正常にインストールできます。

ここで、現在 SharePoint がインストールされておらず、VSeWSS 用に構成されていないビルド マシン (VSeWSS Web サービス エンドポイントなし)にプロジェクトを移行する必要があります。SharePoint および VSeWSS で使用するためにビルド マシンで IIS を構成する必要なく、WSP ファイルのビルドを自動化する方法はありますか?

一部の本では、MakeCab.exeを使用して DDFファイルを定義する手動の手順について説明していますが、VSeWSS によって生成された DDF ファイルが表示されません (自動ビルド プロセスを構成するために使用できる TEMP フォルダーに生成される可能性があります)。 ?)。

4

1 に答える 1

5

私はちょうど同じ問題に直面しました。WSPBuilderソリューション全体を開発するために別のツールを選択しました。よりクリーンで邪魔にならないことがわかりました。また、ビルド ファイルに最適なコマンド ラインから使用することもできます。

プロジェクトをコンパイルしてデプロイし、コードを VSeWSS から WSPBuilder に移動するために、Bil Simserによって作成されたいくつかの Nant スクリプトを変更しました。私のマシンでもビルドマシンでも魅力のように機能します。

http://www.Codeplex.comでWSPBuilder を見つけることができ、これらのターゲットが機能するには ( www.tigris.orgで) nantContrib が必要です。

私が使用しているターゲットのいくつかを次に示します。

<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>
于 2009-08-13T22:53:57.237 に答える