问题标签 [xbuild]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
632 浏览

windows - Windows xbuild CS2011 错误 - 无法打开响应文件:C:\Program

这是该日期最新的单声道版本。从 TeamCity 运行构建时会出现此问题。当 Mono 安装到路径中有空格的目录时,它似乎不起作用。安装程序不允许指定另一个目录。mklink也没有帮助。

如何解决?

0 投票
1 回答
2905 浏览

msbuild - XBuild 报告了太多项目文件,但可以与 MSBuild 一起使用

我正在运行以下 msbuild 命令

msbuild /verbosity:normal /property:configuration="Release" /property:VisualStudioVersion="12.0" /m /property:RunOctoPack="true" /property:OctoPackEnforceAddingFiles="true" /target:"Clean" ../MYSLN。 sln

成功构建。

我刚刚尝试在 OSX 上使用 xbuild 运行相同的命令,所以:

xbuild /verbosity:normal /property:configuration="Release" /property:VisualStudioVersion="12.0" /m /property:RunOctoPack="true" /property:OctoPackEnforceAddingFiles="true" /target:"Clean" ../MYSLN。 sln

哪个报告

MSBUILD:错误 MSBUILD0004:指定的项目文件过多

我有 XBuild Engine 版本 12.0 和 Mono,版本 4.0.2.0

我列出参数的方式是否存在一些微妙的错误

- - 编辑 - -

这被扔在这里:https ://github.com/mono/mono/blob/master/mcs/tools/xbuild/Parameters.cs#L140这表明xbuild没有拿起解决方案文件(我认为)

注意,我尝试将解决方案文件作为第一个和最后一个参数无济于事

- - 编辑 - -

我添加了解决方案文件的名称,以防万一很重要。

- - 编辑 - -

啊,我一直在围绕他们的参数解析代码编写测试,但它无法识别 /m

0 投票
1 回答
1602 浏览

c# - 错误 CS0103:当前上下文中不存在名称“HttpClientFactory”

我正在尝试构建这个 api_query https://github.com/CryptopiaNZ/CryptopiaApi-Csharp.git

使用单声道构建:

并尝试构建这个项目:

这个错误是什么意思:“错误CS0103:当前上下文中不存在名称‘HttpClientFactory’”??

正如我可以用谷歌搜索的那样,它是包含在内HttpClientFactory的命名空间的一部分。System.Net.Http几乎所有的libmono-都安装在我的系统上。

编辑:此外,我已经安装了 Microsoft Visual Studio Community 2015 14.0.23107.0 D14REL,最新版本和错误是相同的。

Edit2:可能,我找到了解决方案。它是 Visual Studio 2013,而不是 2015。我不知道应该是哪个单声道,可能某种降级将有助于构建 HttpClientFactory ...

0 投票
1 回答
278 浏览

mono - xbuild 真的没有实现 Move 任务吗?

我错过了什么,还是 xbuild 真的没有实现<Move>任务?我正在尝试使用 MSBuild 文件为所有内容构建跨平台 C# 项目,因此我们的项目中 Windows 和 Linux 之间的差异会更小,我的 MSBuild 文件看起来有点像这样:

但是当我运行 xbuild 时,它会抱怨:

我错过了什么?我知道 xbuild 并没有实现 MSBuild 的一些更新和/或更高级的功能——我不得不解决其中的一些遗漏——但这项<Move>任务似乎是一个非常非常基本的任务。它真的没有在 xbuild 中实现,还是我遗漏了一些明显的东西?

0 投票
1 回答
669 浏览

.net - 在 Ubuntu 机器上通过 jenkins 发布 .net MVC 解决方案的代码

我们在 ubuntu 中为 .net 代码库设置了 jenkins CI 构建环境。

以下是在 jenkins 中执行并发现运行良好的步骤: - 从 git 获取代码库存储库。- 使用“XBuild”构建代码库。发布模式也可以构建。

构建后,我们面临的问题是发布构建代码。我们可以按照上面列出的步骤,使用 MSBuild 构建并在 Windows 中发布。但是在 Ubuntu 中,我们无法发布(本地或外部),因为命令行参数(在 shell 窗口中)发布 '/p:proj_file_pub.xml' 不适用于 Ubuntu XBuild 构建。

我们还在 Ubuntu 中安装了 mono 工具,用于手动构建 .net 代码库。如果我们可以使用带有任何 shell 命令的 mono 进行发布,请务必让我们知道。

我会重申要求,在 Jenkins 中构建 .net 代码库并发布到本地或外部服务器。首先,我们希望在本地发布代码。

请建议适当的 shell 命令使用 Jenkins 在 Ubuntu 机器上发布代码库。

PS:代码库是一个 MVC Web 应用程序。

0 投票
0 回答
86 浏览

c# - Mac 上的 Mono 4.2 尝试使用 toolversion 4.0 构建项目

我正在尝试在 mac 环境中使用 mono xbuild 4.2 构建一个 toolversion/targeversion 4.0 项目。我使用以下命令:

我可以在编译错误中看到它似乎仍在使用默认的 4.5 工具版本:

/usr/local/Cellar/mono/4.2.0.179/lib/mono/4.5/Microsoft.CSharp.targets(核心编译目标)->

Helpers/Formatters/TextMediaTypeFormatter.cs(20,32):错误 CS0115:

我检查了 .sln 和 csproj 文件,它们不包含对 4.5 的任何引用,这是 .csproj 的一部分。

问题的核心是一个 MediaTypeFormatter 被覆盖的方法,它似乎在 4.0 和 4.5 之间发生了变化,因为它使用了 HttpContent 和 HttpContentHeaders,

我希望通过能够在 csproj 或相关文件中设置工具版本或目标版本,我可以在单声道下构建东西。

我是 C# 和 Mono 的新手,所以任何关于我做错了什么或其他可能的解决方案的见解将不胜感激。

编辑:由于项目限制,不能选择更新到 4.5 工具/目标/版本。

0 投票
1 回答
253 浏览

c# - 从 Xamarin 外部的干净构建编译时 NUnit 中的 xbuild 错误

我正在 Mac OS X 上的 Xamarin 中构建命令行工具。一般来说,我的工作流程是在 Xamarin Studio 中构建和测试。然后我有一个在命令行上构建的发布构建脚本,使用:

但是,我从单元测试子项目中的文件中得到错误,而这些错误在正常构建项目时没有得到:

请注意,这仅适用于从干净的项目构建,从 git 新鲜同步。一旦我在 Xamarin Studio 中打开解决方案并从那里构建,命令行构建脚本就会正常工作。

Xamarin 正在做的事情是我应该在命令行上做的吗?

0 投票
2 回答
1542 浏览

ios - iOS 代码签名仅对 Jenkins 失败

我正在尝试从 Jenkins 构建构建一个 Xamarin Touch 项目,它在代码签名阶段失败。

我的证书和密钥位于系统钥匙串中,因此 Jenkins 应该可以访问。我在构建项目时没有代码签名问题:

  • 使用 Xamarin Studio。
  • 使用/bin/bashxbuild以 Jenkins 用户身份登录。
  • 使用/bin/shxbuild以 Jenkins 用户身份登录。

唯一出现代码签名问题的时间是 Jenkins 自己构建的时候。

错误是“不允许用户交互”,当我从 shell 运行相同的命令时,当一切都作为 Jenkins 用户工作时,我无法解释 Jenkins 构建出了什么问题。

0 投票
1 回答
172 浏览

regex - 带有 [System.Text.RegularExpressions.Regex]::Match(string,string) 参数的 xbuild 无法正常工作(MSBuild 很好)

我有一个使用 ReadLinesFromFile 读取 .proj 文件的目标,然后尝试从包含的行中匹配版本号(例如 1.0.23),例如:

结果总是空的。即使我尝试做一个简单的 Match($(In), "somestring") 它在 linux/xbuild 中也不能正常工作。这确实适用于 windows/msbuild

任何技巧/想法?另一种方法是从第一个 .proj 文件中获取属性版本,而不是读取所有行并将数字与正则表达式匹配,但我什至不知道这是否可能。

我正在运行版本:

编辑: 我已经能够将其进一步追踪到进入 Match() 的参数中,变量评估有问题。该功能实际上适用于例如Match("foobar","bar")我会得到bar

但是其他输入会发生奇怪的事情,例如Match($(In), "Get")会匹配Get,因为它实际上与字符串“@(GetStuffLines)”匹配

当我这样做时,Match($(In), "@..")我会得到一场比赛@(G

但是,当我这样做时,Match($(In), "@.*")我实际上得到了输入文件的全部内容,GetStuff.Data.proj这表明变量在某处正确扩展并且匹配匹配整个输入字符串。

0 投票
1 回答
596 浏览

c# - Mono xbuild:将调试符号从 NuGet 包文件夹复制到输出 bin 文件夹

使用包含符号的 NuGet 包时,Visual Studio 会将这些调试符号文件 ( *.pdb) 直接复制到 bin 输出文件夹中。

xbuild在使用 NuGet 和在 Linux 上使用 Mono时不会发生这种情况-pdb文件不会复制到输出文件夹。

有什么办法让xbuild模仿 Visual Studio 的 pdb 复制行为?