c++ - 从自定义插件中配置 gradle cpp 插件
问题描述
我目前正在创建一个自定义 Gradle 插件,其目的是将 cpp 插件应用于应用该插件的项目。
应用 cpp 插件后,我希望能够在 cpp 插件上设置源集以定义源文件等的标准布局。这在应用于 DSL 中的项目时当然非常简单,但在尝试此操作时似乎很困难通过基于 Java 的插件。
这背后的目的是我希望能够拥有一个位于我的代码库内部的自定义插件,它允许我将插件应用于设置所有 cpp 源集和二进制/库/测试设置的项目不需要我在代码库中的众多项目(微服务)上设置所有这些。
到目前为止,我已经能够创建自定义插件,以便它可以包含在另一个项目中,并且自定义插件应用了 cpp 插件,但是就配置 cpp 插件而言,我有点失利。
我当前的代码如下:
class customPlugin implements Plugin<Project> {
void apply(Project project) {
project.setBuildDir(project.getRootProject().getBuildDir())
project.getPluginManager().apply "cpp"
CppPlugin nativeComponentPlugin = project.getPlugins().getPlugin('cpp') //I can't do anything useful with this object
project.task(project.getName()) {
doLast {
println 'Project ' + project.getName()
}
}
}
然后,在另一个项目中,我调用以下内容来应用插件(其中有效但提供完整性)
apply plugin: org.company.projectplugins.customPlugin
解决方案
推荐阅读
- python - 使用 django 形成多对多关系模型
- php - 当用户选择退出消息服务时,Twilio 不会在 Try/Catch 块上抛出错误 [PHP/Laravel]
- amazon-web-services - 在 Amazon Workspaces 之间共享文件夹
- javascript - 推入另一个数组后未定义的 JavaScript 数组
- javascript - 将 *.vue 文件编译成 *.js 文件以便在 cdn 中使用
- python - 我可以将文件上传到 Heroku 免费层应用程序吗?
- javascript - JavaScript:如何通过子对象值获取父对象键?
- sql - 遍历子数据记录并通过 SQL 计算一个计数器变量
- python - 带有xml的jinja2不呈现
- vue.js - coreui-vue - Vue Carousel 不会自动运行?