先のプロジェクトファイルではナレッジベースの指定は固定でしたが、MSBuildのPropertyを使って汎用的なプロジェクトファイルを定義します。
GX_PROGRAM_DIRは環境変数です。 参照の変数と同じ方法で環境変数値も参照出来ます。 例 : $(GX_PROGRAM_DIR) |
PropertyとしてKBNameとKBDirを定義し、パラメータとしてKBNameを指定する事で、1つのプロジェクトファイルで複数のナレッジベースをビルドする事が出来ます。
<Project DefaultTargets="OpenAndBuildAll" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="$(GX_PROGRAM_DIR)\Genexus.Tasks.targets" />
<PropertyGroup>
<KBName>GX16U2JP_Demo</KBName>
<KBDir>C:\usr\Models16\$(KBName)</KBDir>
</PropertyGroup>
<Target Name="OpenAndBuildAll">
<Message Text="OpenKB:$(KBDir)"/>
<OpenKnowledgeBase Directory="$(KBDir)" />
<BuildAll />
</Target>
</Project>
以下、実行結果です。
その① KBNameにGX16U2JP_Demoを指定した場合
>MSBuild.exe GeneXus.msbuild /t:OpenAndBuildAll /p:KBName=GX16U2JP_Demo
その② KBNameにGxTestSampleを指定した場合
>MSBuild.exe GeneXus.msbuild /t:OpenAndBuildAll /p:KBName=GxTestSample
0 件のコメント:
コメントを投稿