如何在Linux上创建Mono构建服务器(Ubuntu上的Jenkins)

如何在Linux上创建Mono构建服务器(Ubuntu上的Jenkins),ubuntu,build,mono,jenkins,continuous-integration,Ubuntu,Build,Mono,Jenkins,Continuous Integration,我正试图为Ubuntu上的Mono项目设置一个构建服务器 其动机是让我的.NET C#项目能够在Linux主机上运行。所以我想在Windows/Linux上开发,提交和推送,并在运行Jenkins的机器上构建Linux的二进制文件(已经有一个用于构建Windows的实例) 似乎构建的服务器部分比较简单,因为Jenkins提供了一种简单的方法。对于Mono部分,有很多依赖项和包可供选择 所以我基本上是按照计划做的,詹金斯在跑 现在的问题是我需要安装什么才能让Jenkins构建Mono项目。目前我正

我正试图为Ubuntu上的Mono项目设置一个构建服务器

其动机是让我的.NET C#项目能够在Linux主机上运行。所以我想在Windows/Linux上开发,提交和推送,并在运行Jenkins的机器上构建Linux的二进制文件(已经有一个用于构建Windows的实例)

似乎构建的服务器部分比较简单,因为Jenkins提供了一种简单的方法。对于Mono部分,有很多依赖项和包可供选择

所以我基本上是按照计划做的,詹金斯在跑

现在的问题是我需要安装什么才能让Jenkins构建Mono项目。目前我正在使用Mono Develop 3.0.4.7,并创建了一个测试控制台项目。我想我没有涉及任何第三方库,但我真的不知道Mono的Windows安装中包含了什么

这就是我想要的:

  • 我需要在Ubuntu上安装什么,有什么好的
  • 项目文件有什么特殊要求吗?我听说Mono使用的是Windows项目格式。对吗
  • 有Jenkins的插件支持我构建Mono吗
  • 有什么我需要特别照顾的吗?比如在路径中添加特殊路径或某些可能感兴趣的工具
任何知识来源都是令人感兴趣的。如果他们解释为什么,我会很高兴,我不喜欢读“做这个,然后做那个,然后再做另一件事”,没有人解释背景,那么多;)

Linux二进制文件构建在运行Jenkins的机器上(已经有一个用于构建Windows的实例)

如果您在windows上有一个生成.NET程序集的生成服务器,那么您不需要linux。Windows上使用.NET 4.0构建的程序集将在linux上使用最新的Mono运行时运行,而无需重新编译。只要您确保不使用Mono中丢失的任何API。如果您使用的是缺少的API,那么无论如何它都不会使用Mono编译


我建议你省去在Ubuntu上手动构建Mono SDK的麻烦,继续使用Windows构建服务器。上次我检查你必须在你的Ubuntu系统上重建Mono,因为Mono for Ubuntu的默认安装已经过时。

mh,我想我必须回到CLI学校去了解程序集的特性。。。感谢您礼貌的回答^^^@仓鼠这是一种便携式格式。您甚至可以在Linux上使用mono命令行运行时运行.NET生成的.exe文件。我想问题是,在C#中开发时,我一直在Windows平台上玩,可移植性不是很明显;)只有在构建Mono vs.Net时,不需要通过ifdef对代码进行任何修改,这才是正确的-这是由于数据结构中的实现差异而非常常见的。