构建Windows 8 Phone应用程序的命令行(Building Windows 8 Phone

2019-08-04 14:57发布

我目前移植现有的跨平台框架到Windows Phone 8。

构建过程是完全自动的,我们使用的是坚如磐石的CI系统。

我可以构建和部署的Windows Phone从Visual Studio(快递2012)8个样品,但现在我需要到融入我们的构建脚本。

有没有人曾经成功打造(和部署)通过命令行一个双赢Phone 8的应用程序? (或者蚂蚁,制造,使用SCons,无论...)

如果是的话,怎么样?

任何提示欢迎。

Answer 1:

我用下面的bat文件来构建WP7代码(+在它上面的蚂蚁自动化)。 它可能对你有所帮助。

运行build.bat

C:\Windows\Microsoft.NET\Framework\v4.0.30319\MSBuild.exe build.xml /t:BuildAndCopy /p:Revision=123

其中build.xml文件是一样的东西(自身建设BuildAll目标下进入)

<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
    <Import Project="C:\Program Files (x86)\MSBuild\MSBuildCommunityTasks\MSBuild.Community.Tasks.Targets"/>
    <PropertyGroup>
        <Major>1</Major>
        <Minor>0</Minor>
        <Build>0</Build>
        <Revision>x</Revision>
        <OutputPath>Build\</OutputPath>
        <OutputPathDebug>..\Build\Debug\</OutputPathDebug>
        <OutputPathRelease>..\Build\</OutputPathRelease>
    </PropertyGroup>
    <Target Name="BuildAll" DependsOnTargets="Clean; Version">
        <msbuild  Projects="SomeApp.sln" Properties="Configuration=Release;OutputPath=$(OutputPathRelease)"/>
        <msbuild  Projects="SomeApp.sln" Properties="Configuration=Debug;OutputPath=$(OutputPathDebug)"/>
    </Target>
    <Target Name="Clean">
        <RemoveDir Directories="$(OutputPath)" Condition="Exists('$(OutputPath)')"/>
        <MakeDir Directories="$(OutputPath)" Condition="!Exists('$(OutputPath)')"/>
    </Target>
    <Target Name="Version">
        <Message Text="Version: $(Major).$(Minor).$(Build).$(Revision)"/>
        <XmlUpdate
                Namespace=""
                XmlFileName="WindowsPhone\Properties\WMAppManifest.xml"
                XPath="//App[@Version]//@Version"
                Value="$(Major).$(Minor).$(Build).$(Revision)"/>
    </Target>

    <ItemGroup>
        <AppFiles Include="$(OutputPath)\**\*.xap"/>
    </ItemGroup>

    <Target Name="BuildAndCopy" DependsOnTargets="BuildAll">
        <Copy
                SourceFiles="@(AppFiles)"
                DestinationFiles="@(AppFiles->'\\fs\Public\projects\mobile\SomeAppWP\$(Major).$(Minor).$(Build).$(Revision)\%(RecursiveDir)%(Filename)%(Extension)')"
                />
        <Copy
                SourceFiles="@(AppFiles)"
                DestinationFiles="@(AppFiles->'\\fs\Public\projects\mobile\SomeAppWP\latest\%(RecursiveDir)%(Filename)%(Extension)')"
                />
    </Target>


</Project>


Answer 2:

它应该很容易。 我假设你有如下的文件结构

$ / WP8App / SampleApp.sln

你将不得不在项目中使用的路径和解决方案文件。 请执行下列步骤,并确保更新解决方案文件和路径:

  • 打开命令提示
  • 执行: %VS110COMNTOOLS%vsvars32.bat
  • 执行: %VS110COMNTOOLS%..\..\VC\WPSDK\WP80\vcvarsphoneall.bat
  • 执行: MSBuild "WP8App/SampleApp.sln" /t:rebuild /p:Configuration=Release /p:Platform="Any CPU" /v:d

请注意:

  • 你要去的地方运行这些命令的计算机应该有WP8开发环境已经建立。
  • 如果应用程序使用本机库(如PlayerFramework http://playerframework.codeplex.com/其安装到VS,这些库也应在运行命令之前安装)
  • 我用的VS2012 Pro和VS2012 Premium和詹金斯此过程生成服务器。

祝你好运,药草



Answer 3:

多亏了谢尔盖的MSBuild.exe暗示我是能够建立通过命令行一个简单的示例。

https://github.com/AndreasOM/wp8-directx-commandline

有包括了运行build.bat,这应该足以让你开始与您所选择的构建系统建立“的Windows Phone 8”。

这是目前相当哈克,但一旦我得到当前的项目做,我会清理。

提示:用“CL.EXE”工作时决不限定“CL”环境变量;)



文章来源: Building Windows 8 Phone App on Command Line