gradle新手,
我已经开始实现一个小的gradle插件。该插件的目标是为项目创建一个发布zip,目的是跨几个不同的项目使用。
每个项目都有一个yaml文件,其压缩结构松散;
---
zip:
task:
- name:
zip:
task:
- name:
- name:
- name:
>
zip表示此时应该压缩给定的工作目录
task表示为准备压缩而准备特定目录时应执行的梯度任务的名称
想到的最好的方法是,通过这种方法,我可以在项目之间重用渐变任务,如果需要,可以在每个项目级别包括自定义渐变任务,并在yml中引用它们。使用yaml还有助于创建发布拉链,使其易于构建和阅读。。
我有一个manager gradle任务,它在运行时从cli调用/gradlew myReleaseZipTask(我认为我是通过将其作为exec任务并将逻辑放入exec操作中来实现的)。此管理器任务负责将yaml文件解析为DTO。从最低的任务开始遍历,我遍历执行每个gradle任务的图形,按照定义将文件准备到指定的目录中,然后在所有任务完成后压缩当前工作区。继续向上绘制图形
我的实施进行到一半,我有点担心我滥用gradle的方式不是有意的。我的一些主要担忧是;
我有一个任务正在协调许多其他gradle任务,我要么在运行中查找或创建一个任务,然后检索其动作并从我的manager任务中执行它们,这在gradle示例中并不常见。每个人似乎都有非常静态的线性任务依赖关系,并且不会“反思性地”创建或查找要执行的任务。。
当处理来自yml的任务条目时,我的管理器任务尝试按名称查找gradle任务,如果它不存在,则尝试创建任务。给定创建/找到的任务,我将YmlTaskDTO的属性设置到该任务上,然后调用该任务执行。重复使用具有不同属性的相同任务会遇到问题吗?例如,如果我有这样的东西;
zip:
task:
- name: taskA
argA: A
argB: B
- name: taskA
argA: A
argB: C
有谁能给我一些关于我的设计的反馈,如果它符合gradle使用的正确标准吗?请提出您可能存在的任何问题!
我认为你自己已经意识到了一些答案<这里的一个指导是,“插件”将创建一种新的功能,这在本机gradle中是不可用的。
您在这里所做的是按照您的用例的特定顺序组合现有任务。这个插件是一个大材小用。
你所寻找的可以通过简单的任务和任务链来实现。
我以一个新的gradle用户的身份创建gradle版本,但我过去曾与maven合作过。 我试图重现maven发布插件的动作: 将分支版本更改为发行号(在svn提交) 如您所见,我正在使用: Nexus OSS作为版本控制库 SVN作为scm Gradle(2.8) 我正试图通过这两个插件实现我的目标: > 将分支版本更改为发行号(在svn提交) 创建标签(位于svn) 将分支版本更改为新快照编号(
null 现在,当我使用mvn从Jenkins内部运行maven release插件时,我仍然得到以下信息: 不显示错误 按预期创建SVN标记 然后在部署期间,它失败,出现上述错误 正如我提到的,快照部署经常发生并且没有错误,因此settings.xml、distributionManagement和Nexus权限似乎都是正常的。 我能够手动访问 我已经用和进行了检查,似乎一切正常 有什么想法吗?
对于所有专家,我们一直在开发一个包含以下模块的应用程序: opencv 努比 熊猫 跺脚 nltk bs4 PIL 请求 还有一些不是pythons标准库的一部分。希望将其打包到单个可执行文件中。因此,我们尝试使用pyinstaller。执行时也是如此-它会建立分发文件夹-但无法执行。它抛出以下错误: 下面是运行命令时的输出 有人能帮我做同样的事吗。。我怎样才能解决这个问题?
我有一个场景,我需要一些帮助来制定问题,这样我才能正确地实施优化方法。我希望有人能给我一些指导,表面上看起来很简单,但我很难弄清楚如何正确编码变量、约束等。 情况是这样的: 需要将多个物品放入箱子/背包中 例: 每个项目有两个值的向量: 项目=[[7,6],[14,2],[27,23],[5,15]] 箱子/背包的向量,第一个值为物品第一个值可接受的上限。第二个值相同,但适用于箱子/背包中每个物品
在Windows 10系统上重新安装Repast Symphony 2.5.0(Win 64bit)和JDK 9.0.1后,导入JZombies_Demo示例时,无法使用默认配置启动模型。 错误显示: 当我编辑默认运行配置时,在依赖项选项卡中,我只看到JRE系统库,没有其他内容。在同一个选项卡中,恢复默认条目被启用-当我按它时,来自Repast Symphony的所有依赖项都被添加,并且之前的错误
更改历史 * 2017-12-31 胡小根 初始化文档 1 步骤 以下步骤以 Xcode 8.3.1 为例 1.1 生成xcode工程 ionic cordova platform add ios 如下图所示: 1.2 在xcode中登录Apple ID 如下图所示: 1.3 生成CSR文件 1.4 生成Certificate 登录developer.apple.com,生成Ce