问题标签 [post-build]
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.
c++ - 如何使用主要 CMakeLists.txt 中的 cmake 复制目标文件?
例如,假设有四个文件夹(app1、app2、app3 和 main),如下所示
module1 的哪个输出是 module1.dll,library5 的输出是 lib5.dll。app1 的文件夹必须包含 module1.dll 和 lib5.dll,app2 需要 lib5.dll,最后 app3 需要 module1.dll(应用程序、模块和库的数量比这个例子多,正如我在下面解释的那样,我们不想改变modules/libraries's CMakeLists.txt
,只是 main'sCMakeLists.txt
是我们的)。
PS:
我有一个cmake
项目,它有几个库和模块。它们使用add_subdirectory
命令包含在我的项目中(请注意,我的项目只是由多个模块组成,并且没有任何add_library
or add_target
)。
我需要复制库/模块的输出 而不更改它们CMakeLists.txt
(add_custom_command
使用POST_BUILD
选项实际上不是一个好的选择,因为此时我需要更改它们不只是属于我的项目CMakeLists.txt
的库/模块)。另一方面,它必须在具有其他(库/模块)的外部(主要)中完成。 CMakeLists.txt
我尝试了其他一些命令,例如file (COPY )
andconfigure_file()
但我认为它们在生成cmake-cache
阶段运行,并且只能复制存在于预构建阶段的资源文件。
此外,在另一种方法中,我编写了一个 bash 脚本文件来复制文件并CMakeLists.txt
通过下面的命令在专业中调用它。
有files
文件列表。但是副本没有执行!我手动测试了按需要工作的脚本。但我不知道为什么它不能在 CMakeLists.txt 中调用。
我该怎么做才能将子项目的输出从专业复制到某些位置CMakeLists.txt
?
jenkins - Jenkins 构建摘要链接到构建后构建摘要
我有一份工作是作为其他几十个工作的构建后操作触发的。它本质上组织和处理这些上游作业的工件(使用 Copy Artifact Plugin),并将重新格式化的日志和原件作为自己的工件发布。
我希望上游作业的构建摘要页面具有指向该下游作业的链接。据我所知,这不是一个预期的用例。传统观点似乎是,如果我们想要链接到下游作业,我们应该在上游作业的构建步骤中将其作为子项目运行。但如果我这样做,我就没有工件可以传递给下游工作。捕获 22。
或者我可以做些什么(甚至是一些非常糟糕和讨厌的东西)来完成这项工作。人们希望直接从构建页面获取处理后的工件。
jenkins - 如果状态从“失败”变为“成功”,Jenkins 发布构建任务(已修复)
在 Jenkins 自由式作业中(在较旧的 1.6x 版本上,不支持 2.x 管道作业),如果构建状态从to恢复(!),我想运行一个 shell 命令(curl -XPOST ...
)作为构建后步骤。FAILED
SUCCESS
但是,我所知道的所有用于确定构建状态的插件只能在当前构建状态为FAILED
或SUCCESS
但不考虑与上次构建相比是否恢复时才能执行某些操作。
有什么方法可以实现这一点,例如使用Groovy Post build
插件和一些脚本行?
visual-studio - 在构建后将 dll 复制到另一个项目,但 SolutionDir 级别下降
我想在构建后将 dll 从一个项目复制到同一解决方案中的另一个项目,但所有解决方案目录都对我没有帮助,而 Marcos 没有任何帮助。例如:
C:/A/B/Pro1 中的 pro1
c:/A/B/Pro2 中的 pro2
C:/A/B/SolutionFolder 中的解决方案
我想将pro1.dll复制到pro2/bin 问题是 SolutionDir 是C:/A/B/SolutionFolder 我需要上一层。我尝试了这些和其他没有任何帮助!
xcopy "$(TargetDir)$(TargetFileName)" "$(SolutionDir)..\Pro1\bin)"
xcopy "$(TargetDir)$(TargetFileName)" "$(SolutionDir)" "(..\Pro1\bin)" 带 () 和不带它们
编辑:我需要将此文件复制到 2 个方向,而不仅仅是一个。我试过&&但没有用
cmake - CMake 自定义目标不构建
我正在使用以下方法构建两个目标:
在构建两者之后,我需要运行一个依赖于两个目标的构建后步骤。我尝试了以下多种组合,但没有成功:
最终目标根本不会构建,即使它的 build.make 包含自定义命令。
尝试将 ALL 用于自定义目标,但是在缺少第一个目标时尝试先构建它。
而且我不能将 add_library 或 add_executable 用于最终目标,因为它们需要指定源文件。
正确的方法是什么?
====================================
编辑:下面是一个最小的可验证源代码。它试图做的是在两种架构中编译代码(对于 Mac),并作为后期构建使用 lipo 创建一个通用二进制文件:
而a.cpp的内容是:
wpf - 使用不同的清单文件两次编译应用程序
有没有办法在 Visual Studio(版本 2015/2017)中使用不同的清单文件两次编译 WPF 应用程序?一方面我需要应用程序需要管理员权限,另一方面相同的应用程序没有管理员权限(意味着:没有或另一个清单文件)。
使用编译常量,我可以做这样的事情:
但这似乎不像预期的那样工作。我只需单击一次构建按钮并接收两个应用程序的解决方案将是完美的。
另一种可能的解决方案是使用构建后命令,但我不确定这是否可行。
linux - 在 buildroot 中使用构建后脚本
我使用 buildroot 来构建我自己的 rootfs 并使用 post-build.sh 来定制它。
具体来说,我在 /opt 中创建了一个文本文件
并运行 make 命令。我检查了即将推出的 rootfs 并且 testfile01.txt 在 /opt 中。一切正常。
然后我将 post-build-sh 的内容更改为
并再次运行 make 命令。
我观察到的行为是第二次 make 后两个文件(testfile01 和 testfile02)都存在于 rootfs 中。删除 rootfs 并运行 make 命令也不会改变这种行为。
在 buildroot 手册中写道,在构建后脚本中进行更改后不需要完全重建。
如何改变这种行为?
感谢您的帮助
编辑:buildroot-2018.02.2,Ubuntu 18.04 LTS
jenkins - 如何在 Computer.waitUntilOnline 上设置超时
精简版
在 Jenkins 构建后的 groovy 脚本中,有没有办法让Computer.waitUntilOnline
函数在一段时间后超时?
背景
我们对嵌入式设备进行测试,我们的 jenkins slave 是连接到某些硬件设置的笔记本电脑。在某些情况下,我们需要一个 groovy post-build 脚本重新启动计算机,然后等待它再次上线。然而,有时这些机器不会再次上线,而我们的 groovy 脚本只是无限期地等待。
该waitUntilOnline
函数可以抛出 InterruptedException,但据我所知,您需要运行多个线程才能触发该异常。运行多个线程只是为了触发超时似乎是错误的处理方式。
我还找到了一些关于使用timeout
. 这是为 Jenkins Pipelines 设计的,所以我不确定我是否可以在构建后的 groovy 中使用它,而且我还没有让它工作。我尝试了各种组合,包括:
和
但似乎都抛出了这样的异常:
任何建议表示赞赏。
编辑:我也尝试过@groovy.transform.TimedInterrupt
注释,正如这个问题中提到的,我得到了奇怪的结果。
当我运行这个简单的循环示例时,我得到了预期的结果:它为 i 打印了一些值。但是,如果我尝试将此与重新启动计算机相结合,如下所示:
我得到了奇怪的结果:有时我得到 i 的一些值的预期输出,有时我得到一个未捕获的异常:
这是踢球者:我是否获得 i 的值或异常,似乎取决于先前的运行。
如果我用 reboot 命令运行它几次,我总是会得到异常。如果我用 echo 命令(当前已注释掉)运行它几次,我总是得到打印 i 的预期结果。但是,如果我使用 reboot 命令运行它,然后将其切换到 echo 命令并运行几次,第一次使用 echo 它会给出异常,之后它会给出 i 的值。如果我从 echo 命令切换到 reboot 命令,第一次运行 reboot 也会很好(打印 i 的值),然后它会开始给出异常。
我不太明白上一次运行如何影响当前运行的超时......
再次感谢任何输入!
jenkins - 无法将 cucumberTestResults 作为构建后操作添加到我的 dsl 文件中
我正在尝试将 cucumberTestResults 作为构建后操作添加到我的 dsl 文件中。但它只是被忽视了。
jenkins - 如何在 jira 插件的构建后访问中访问环境变量
我JIRA Plugin
为詹金斯安装了。Post-build Action
它在菜单中添加了一些操作。其中一项行动是JIRA:更新相关问题。
当我尝试访问环境变量时,它会出错。
$MY_ISSUE_ID
是有效的环境变量,我可以在构建的其他部分访问它。
我试过issue=${XXXX}
,,issue=XXXX
等等issue="$XXXX"
......但都给出了错误。
environment variable
在jql中传递post build action
.
当我给issue=MYPROJECT-1234
时,它工作正常。但是,我想设置MYPROJECT-1234
为环境变量。