• .Net用命令行编译项目


    我们都知道.Net 的csc.exe文件可以对.cs文件编译,那么我们怎么对项目和解决方案进行编译呢?

    msbuild命令,

    使用方法如:在NET命令行中输入msbuild *.sln或者msbuild *.csproj,回车即可

    例如:
            MSBuild 路径webapp.sln /t:Rebuild /p:Configuration=Release
            MSBuild 路径webapp.csproj /t:Clean /p:Configuration=Debug

    参考:http://msdn.microsoft.com/zh-cn/library/ms171451(v=VS.80).aspx

    Microsoft (R) Build Engine Version 2.0.50727.3053
    [Microsoft .NET Framework, Version 2.0.50727.3053]
    Copyright (C) Microsoft Corporation 2005. All rights reserved.
    
    Syntax:              MSBuild.exe [options] [project file]
    
    Description:         Builds the specified targets in the project file. If
                         a project file is not specified, MSBuild searches the
                         current working directory for a file that has a file
                         extension that ends in "proj" and uses that file.
    
    Switches:
    
      /help              Display this usage message. (Short form: /? or /h)
    
      /nologo            Do not display the startup banner and copyright message.
    
      /version           Display version information only. (Short form: /ver)
    
      @<file>            Insert command-line settings from a text file. To specify
                         multiple response files, specify each response file
                         separately.
    
      /noautoresponse    Do not auto-include the MSBuild.rsp file. (Short form:
                         /noautorsp)
    
      /target:<targets>  Build these targets in this project. Use a semicolon or a
                         comma to separate multiple targets, or specify each
                         target separately. (Short form: /t)
                         Example:
                           /target:Resources;Compile
    
      /property:<n>=<v>  Set or override these project-level properties. <n> is
                         the property name, and <v> is the property value. Use a
                         semicolon or a comma to separate multiple properties, or
                         specify each property separately. (Short form: /p)
                         Example:
                           /property:WarningLevel=2;OutDir=binDebug
    
      /logger:<logger>   Use this logger to log events from MSBuild. To specify
                         multiple loggers, specify each logger separately.
                         The <logger> syntax is:
                            [<logger class>,]<logger assembly>[;<logger parameters>]
                         The <logger class> syntax is:
                            [<partial or full namespace>.]<logger class name>
                         The <logger assembly> syntax is:
                            {<assembly name>[,<strong name>] | <assembly file>}
                         The <logger parameters> are optional, and are passed
                         to the logger exactly as you typed them. (Short form: /l)
                         Examples:
                           /logger:XMLLogger,MyLogger,Version=1.0.2,Culture=neutral
                           /logger:XMLLogger,C:LoggersMyLogger.dll;OutputAsHTML
    
      /verbosity:<level> Display this amount of information in the event log.
                         The available verbosity levels are: q[uiet], m[inimal],
                         n[ormal], d[etailed], and diag[nostic]. (Short form: /v)
                         Example:
                           /verbosity:quiet
    
      /consoleloggerparameters:<parameters>
                         Parameters to console logger. (Short form: /clp)
                         The available parameters are:
                            PerformanceSummary--show time spent in tasks, targets
                                and projects.
                            NoSummary--don't show error and warning summary at the
                                end.
                            NoItemAndPropertyList--don't show list of items and
                                properties at the start of each project build.                           
                         Example:
                            /consoleloggerparameters:PerformanceSummary;NoSummary
    
      /noconsolelogger   Disable the default console logger and do not log events
                         to the console. (Short form: /noconlog)
    
      /validate          Validate the project against the default schema. (Short
                         form: /val)
    
      /validate:<schema> Validate the project against the specified schema. (Short
                         form: /val)
                         Example:
                           /validate:MyExtendedBuildSchema.xsd

    如果要写工具来自己编译,与编译相关的命名空间:

    using Microsoft.Build.Framework;
    using Microsoft.Build.BuildEngine;
    using Microsoft.Build.Utilities;

     

  • 相关阅读:
    记一次曲折的运维经历-2020-04-23
    linux主机上执行wget命令遇到的问题
    linux系统上部署nfs服务
    【精】Linux磁盘I/O性能监控之iostat详解
    ssh_exchange_identification: Connection closed by remote host 解决方法
    nginx backup 功能
    mysql 报错 get error 28 from storage engine 解决方法
    mysql常用sql语句
    关于mysql 主从同步错误解决方法
    azure负载均衡上遇到的坑-12-28
  • 原文地址:https://www.cnblogs.com/yongtaiyu/p/3256961.html
Copyright © 2020-2023  润新知