2010-02-03 69 views
0

我是编写构建脚本的新手。我正在尝试了解在创建构建脚本时使用不同语言(c#,vb.net C++)的影响。语言(C#或VB.Net项目)对.Net构建脚本的影响

构建脚本可以使用Nant或MSBuild编写。

构建脚本中唯一的变化是关于编译器切换,甚至部署结构也随语言而改变。据我了解,我不认为应该对部署结构有任何影响,但只是想从专家那里确认。

回答

1

就构建脚本而言,不会有太大的区别。在解决方案或项目文件中使用MSBuild任务编译项目会更容易。当您的构建脚本使用MSBuild任务编译时,无需担心它是vb还是c#项目。

编译的语言特定细节在MSBuild任务和项目文件之间进行处理。将其视为构建脚本运行子构建脚本,但Visual Studio会生成该子构建脚本(项目文件)。 MSBuild和Nant(带Nant Contrib)都可以启动MSBuild任务。

如果您希望构建服务器为您的项目自动生成一个版本号,则会有一些细微差别。 AssemblyInfo文件在语言之间会有所不同。您用来更新AssemblyInfo文件的构建任务应该有一个选项,用于选择使用哪种语言,并相应地更新文件。

+0

非常感谢您的回答。 – rauts 2010-02-04 09:53:50

1

使用MSBuild,it's an xml format all it's own时,没有什么真正特定的语言。

这就是说......你可以有你自己写的自定义任务,但他们可以使用你选择的任何.Net语言。

当您对语言等进行更改时,只要您在Visual Studio中,它只是按照您配置的方式编译解决方案(例如RELEASE,DEBUG或您制作的其他设置)。它只是在大部分时间调用该解决方案,除非您真的在自定义构建。如果您进行了自定义(就像我们自定义程序集构建版本以匹配更改集),则语言细节可能很重要,因为在某些情况下您正在编辑源文件。