构建服务器上的基础设施组件

2024-05-24

我“继承”了一个新的(旧的?)Winforms 项目,并希望将其放到我们的构建服务器(Bamboo)上。该构建服务器只安装了绝对最低限度的版本(.NET 3.5,仅此而已),我们希望保持这种状态。

第一步,我将 Infragistics 组件的所有程序集文件 (*.dll) 提取到一个单独的目录中,并从该本地目录引用它们(而不是依赖于将它们安装在 GAC 中)。工作正常。

但是当我尝试在 Bamboo 上运行此构建(使用 MSBuild)时,我不断收到错误:

属性\licenses.licx(1):错误 LC0004:创建时发生异常 类型 'Infragistics.Win.UltraWinToolbars.UltraToolbarsManager, Infragistics2.Win.UltraWinToolbars.v7.2, 版本=7.2.20072.61,文化=中立, PublicKeyToken=7dd5c3163f2cd0cb' System.ComponentModel.LicenseException

经过一番谷歌搜索后,似乎那些licenses.licx项目中的文件是某种许可方案,以防止这些工具安装在多台计算机上。

但是我怎样才能摆脱这些,以便我的构建服务器构建能够工作,without将完整的 Infragistics 组件集安装到构建服务器上(这是NOT一个选项)??

  • 如果我只是从项目中删除它们,构建可能会起作用(尚未尝试),但我的设计时经验将受到影响/不起作用(两者中的哪一个?)
  • 拥有这些文件,以便我的设计时经验有效,可以防止自动构建运行......

嗯......经典的第 22 条军规 - 有什么办法摆脱这个吗?


我发现解决这个问题的唯一方法是:

  • 创建一个绝对空(0字节长度)的文件licenses.licx在我的解决方案所在的文件夹中
  • 在构建的初始阶段,源代码是从我的源存储库中提取的
  • 当时间到了,就在构建开始之前,我复制这个空的licenses.licx超过所有现有的licenses.licx在各个项目中'Properties目录

有了这个,现在我的交互体验都可以工作了(因为正确的licenses.licx文件存在),但我的自动构建也不会中断(因为空的licenses.licx我复制的所有真实文件不会导致构建中任何中止)

看起来有点老套——但它确实有效。希望有一天能帮助某人、某地。

Update:我添加了这个BeforeBuild步骤到我的 MSBuild 构建文件以复制空的*.licx文件到我需要的位置:

<Target Name="BeforeBuild">
   <CreateItem Include="licenses.licx">
       <Output TaskParameter="Include" ItemName="EmptyLicensesLicx" />
   </CreateItem>

   <Copy SourceFiles="@(EmptyLicensesLicx)" 
         DestinationFolder="(your-target-folder-here)" 
         ContinueOnError="true" />

</Target>

由于我需要在几个地方替换这个 *.licx 文件,所以我实际上有几个这样的文件<Copy>任务来实现我的目标。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

构建服务器上的基础设施组件 的相关文章

  • Python Selenium:如何在文本文件中打印网站上的值?

    我正在尝试编写一个脚本 该脚本将从 tulsaspca org 网站获取以下 6 个值并将其打印在 txt 文件中 最终输出应该是 905 4896 7105 23194 1004 42000 放置的动物 的 HTML span class
  • CFdump cfcomponent cfscript

    可以在 cfcomponent 中使用 cfdump 吗 可以在 cfscript 中使用 cfdump 吗 我知道 anser 不是 那么如何发出 insde cfcomponent 函数的值 cf脚本 我用的是CF8 可以在 cfcom
  • 如何在执行新操作时取消先前操作的执行?

    我有一个动作创建器 它会进行昂贵的计算 并在每次用户输入内容时调度一个动作 基本上是实时更新 但是 如果用户输入多个内容 我不希望之前昂贵的计算完全运行 理想情况下 我希望能够取消执行先前的计算并只执行当前的计算 没有内置功能可以取消Pro
  • 如何从日期中查找该月的最后一天?

    如何在 PHP 中获取该月的最后一天 Given a date 2009 11 23 我要2009 11 30 并给出 a date 2009 12 23 我要2009年12月31日 t返回给定日期所在月份的天数 请参阅的文档date ht
  • Redis如何存储关联数组?设置、散列还是列表?

    我对 Redis 的所有可用存储选项有点困惑 我想做一些简单的事情 并且不想过度设计它 我正在与phpredis and Redis v2 8 6 我有一个需要存储的简单关联数组 我还需要能够通过其键检索项目并循环遍历所有项目 a arra
  • 如何使用asm.js进行测试和开发?

    最近我读到asm js规范 看起来很酷 但是是否有任何环境 工具来开发和测试这个工具 这还只是处于规范阶段吗 您可以尝试使用 emscripten 和 ASM JS 1 并从侧分支在 firefox 构建中运行它 有关 asm js 的链接
  • Vue.js[vuex] 如何从突变中调度?

    我有一个要应用于 json 对象的过滤器列表 我的突变看起来像这样 const mutations setStars state payload state stars payload this dispatch filter setRev
  • CSS溢出文本显示在几行中,没有断字

    我有一些长文本显示在 div 中 该 div 具有固定的宽度和高度 我希望文本显示在几行上 作为 div 高度 并且句子单词不会中断 一行中的单词前缀和下一行中的继续 此外 我想在末尾添加省略号最后一句话 CSS white space n
  • 节拍匹配算法

    我最近开始尝试创建一个移动应用程序 iOS Android 它将自动击败比赛 http en wikipedia org wiki Beatmatching http en wikipedia org wiki Beatmatching 两
  • Spring Boot @ConfigurationProperties 不从环境中检索属性

    我正在使用 Spring Boot 1 2 1 并尝试创建一个 ConfigurationProperties带有验证的bean 如下所示 package com sampleapp import java net URL import j
  • 用于验证目的的动态查找方法

    我正在使用 Ruby on Rails 3 0 7 我想在运行时查找一些记录以进行验证 但为该查找方法传递 设置一个值 也就是说 在我的班级中 我有以下内容 class Group lt lt ActiveRecord Base valid
  • neo4j - python 驱动程序,服务不可用

    我对 neo4j 非常陌生 我正在尝试建立从 python3 6 到 neo4j 的连接 我已经安装了驱动程序 并且刚刚开始执行第一步 导入请求 导入操作系统 导入时间 导入urllib 从 neo4j v1 导入 GraphDatabas
  • rspec 中的模拟方法链

    有一系列方法可以获得user目的 我试图模拟以下内容以返回user in my Factory Girl current user AuthorizeApiRequest call request headers result 我可以模拟该
  • 使用 xpath 和 vtd-xml 以字符串形式获取元素的子节点和文本

    这是我的 XML 的一部分
  • 如何使用 Pycharm 安装 tkinter? [复制]

    这个问题在这里已经有答案了 I used sudo apt get install python3 6 tk而且效果很好 如果我在终端中打开 python Tkinter 就可以工作 但我无法将其安装在我的 Pycharm 项目上 pip
  • 如何将输入读取为数字?

    这个问题的答案是社区努力 help privileges edit community wiki 编辑现有答案以改进这篇文章 目前不接受新的答案或互动 Why are x and y下面的代码中使用字符串而不是整数 注意 在Python 2
  • Statsmodels.formula.api OLS不显示截距的统计值

    我正在运行以下源代码 import statsmodels formula api as sm Add one column of ones for the intercept term X np append arr np ones 50
  • 在 Nexus 7 2013 上更改方向时 CSS 媒体查询不起作用

    我目前正在我的笔记本电脑 台式电脑和 Nexus 7 2013 上测试 CSS 媒体查询 除了 Nexus 7 之外 它们在台式机和笔记本电脑上都运行良好 当我更改方向时 除非刷新页面 否则样式不会应用 例如 以纵向模式握住设备时 页面正常
  • 如何在react-highcharts中使用图表工具提示格式化程序?

    如何使用图表工具提示格式化程序 我正在使用高图表的反应包装器 我有这样的配置 const CHART CONFIG tooltip formatter tooltip gt var s b this x b each this points
  • 强制 Listview 不重复使用视图(复选框)

    我做了一个定制Listview 没有覆盖getView 方法 Listview 中的每个项目都具有以下布局 联系布局 xml

随机推荐

  • Prolog - 如何从输入文件的给定列表中创建变量列表?

    我有一个输入谓词将文件作为列表读取 输入 文件名 列表 该列表的格式将是 9 字面意思就是下划线字符 在这里 不是一个通配符 问题是我如何编写谓词 pred List List2 然后转换所有 进入变量但保留9还在同一个位置吗 所以如果我输
  • Ajax 帖子:405 方法不允许

    在我的名为 Payment 的 API 控制器中 我有以下方法 HttpPost public HttpResponseMessage Charge Payment payment var processedPayment paymentP
  • Git worktree prune - 它有什么作用?

    我在用着git 版本 2 14 2 windows 2并调用 git worktree add
  • 为什么不直接使用 DateTime.Now 呢?

    最近一直在努力学习接口方面的知识 我看到了这段代码 但无法理解为什么你不直接使用DateTime Now在其自己的 我不确定为什么这个界面很有用 有人可以解释一下吗 这本书的作者试图解释 但我不太明白如何按照他们所说的方式实现它 程序员是否
  • 如何强制 scipy.optimize.curve_fit 修复第一个点?

    我使用此代码通过拟合指数来平滑数据scipy optimize curve fit def smooth data v1 x arr y arr def func x a b c return a np exp b x c Scale da
  • 从 .Plist 加载数组

    我正在尝试从 Plist 中的数组加载数组 但它不起作用 该 plist 看起来像这样 这是我正在使用的代码 NSString path NSBundle mainBundle pathForResource DiseaseProperty
  • Objective-C 中的属性和实例变量

    我对 Objective C 中的属性和实例变量感到相当困惑 我正在阅读 Aaron Hillegass 的 Mac OS X 的 Cocoa 编程 一切都很合乎逻辑 你可以像这样声明一个类 class Something interfac
  • QWebSocketServer - 不释放内存

    首先 我在安全 websocket 服务器应用程序上运行 valgrind 并发现了一个问题 在 Qt Memcheck 中我必须检查 外部错误 看到它 一些字节是肯定输了 指着我的main就在我的地方QCoreApplication ex
  • 如何让 Vim 匹配不以七位数字开头的行?

    我有一个大约 1000 行的文件 除个别行外 所有行均以七位数字开头 我需要捕捉这些行并将它们与前一行实际连接起来 我已经成功地能够使用以下正则表达式模式匹配以七位数字开头的任何行 d 7 我似乎无法让它匹配任何一行不匹配不过 这种模式确实
  • 如何按名称杀死进程? (Win32 API)

    基本上 我有一个将启动多次的程序 因此 该程序将启动两个或多个进程 我想使用 Win32 API 并终止 终止具有特定名称的所有进程 我见过杀死一个进程的例子 但没有看到多个具有完全相同名称 但参数不同 的进程 尝试下面的代码 killPr
  • 如何在 ag-grid 中以编程方式更改“无行显示”文本?

    我最近一直在修补 Ag grid 当我从 REST API 获取一些数据时 我想将 无行显示 文本更改为 数据正在加载 数据以 JSON 对象数组的形式返回 但是 如果 API 确实返回一个空数组 我希望 数据正在加载 文本更改为 无行可显
  • 在 Xcode 6 - Swift 中使用自定义字体 [重复]

    这个问题在这里已经有答案了 我是斯威夫特新手 我想知道如何在 Xcode 6 的 swift 应用程序中使用自定义字体 您只需将字体文件 ttf 拖到 Xcode 左侧窗格的资源区域中即可 当您将其放入时 会出现一个对话框 确保您的应用程序
  • Java中如何确保String对象被销毁?

    我公司的一名员工需要通过我编写的程序修改 SQL Server 数据库中的数据 该程序首先使用 Windows 身份验证 我要求 DBA 授予该特定用户对所述数据库的写入权限 他们不愿意这样做 而是授予了写权限myWindows 用户帐户
  • 如何使用 thymeleaf 和 spring 用列表填充下拉列表

    我需要用字符串列表中的所有值填充下拉列表 控制器类 RequestMapping value generateIds method RequestMethod GET public String launchPage Model model
  • 是否可以使用 Python 读取 FTP 文件而不编写它们?

    我正在尝试使用 Python 的 ftplib 读取文件而不写入它们 大致相当于 def get page url try return urllib urlopen url read except return 但使用FTP I trie
  • 在 MATLAB 图中用值标记点

    以下命令确实用正方形标记了点 但没有在其中放入值 例如 21 0 X 21 8 2 1 0 Y 0 1 2 3 4 plot X Y k s 我应该添加哪个参数以便全部5点值出现在图上吗 这些值不能一一键入 因为它们是随机数 因此它们可能会
  • 打字总是抱怨全局模块

    我对打字稿很陌生 无论我尝试安装什么类型 我都会得到 打字错误 消息 尝试将 Angular 编译为外部模块 但它看起来像全局模块 我只是想做 typings install dt angular 我究竟做错了什么 Update 如果您对此
  • 从类 T 获取函数名 (__func__) 和指向成员函数的指针 void(T::*pmf)()

    是否可以写一些f 接受类型的模板函数T和一个指向签名成员函数的指针void T pmf 作为 模板和 或函数 参数并返回const char 指向成员函数的 func 变量 或损坏的函数名称 EDIT 我被要求解释我的用例 我正在尝试编写一
  • 停止 JavaScript 执行而不锁定浏览器

    您是否能够在不锁定浏览器的情况下停止 JavaScript 执行 通常停止执行的方法是无限执行while loop 但对于 FireFox 它会锁定浏览器 直到循环结束 您对此有何看法 我正在尝试覆盖window confirm 使用 HT
  • 构建服务器上的基础设施组件

    我 继承 了一个新的 旧的 Winforms 项目 并希望将其放到我们的构建服务器 Bamboo 上 该构建服务器只安装了绝对最低限度的版本 NET 3 5 仅此而已 我们希望保持这种状态 第一步 我将 Infragistics 组件的所有