首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何将"yarn run-script build“任务从前端maven-plugin迁移到gradle?

如何将"yarn run-script build“任务从前端maven-plugin迁移到gradle?
EN

Stack Overflow用户
提问于 2018-08-20 16:22:04
回答 1查看 421关注 0票数 0

我使用gradle-node-plugin而不是frontend maven-plugin。

maven中的"yarn run-script build“任务是这样编写的:

代码语言:javascript
复制
<execution>
   <id>yarn run-script build</id>
   <goals>
      <goal>yarn</goal>
   </goals>
   <phase>prepare-package</phase>
   <configuration>
      <arguments>build</arguments>
      <environmentVariables>
         <buildDir>${project.build.directory}/classes/static</buildDir>
      </environmentVariables>
   </configuration>
</execution>

在gradle中,我编写了yarnScriptBuild任务

代码语言:javascript
复制
task yarnScriptBuild(type: YarnTask, dependsOn: yarnTest) {
    group 'Node'
    args = ['run', 'build']
}

如果我使用了"./gradlew yarnScriptBuild“命令,

我收到错误消息“输出路径不能是项目根目录!”

然后我将outputs.dir = ("$buildDir/classes")插入到yarnScriptBuild中,但它不起作用。

(前几天我找到了"$buildDir表示{根目录}/build“的页面)

我得到了另一个错误“没有这样的属性: dir的类: org.gradle.api.internal.tasks.DefaultTaskOutputs”

这是否意味着"dir“属性不存在?

我该怎么办?遗漏了什么?

如果信息不足,请让我知道。

谢谢。

EN

回答 1

Stack Overflow用户

发布于 2018-08-21 13:12:13

尝试在NodeExtension中配置yarnWorkDirnodeWorkDir

代码语言:javascript
复制
NodeExtension node = project.extensions.getByType(NodeExtension.class)
node.with {
     nodeModulesDir = ${pathToDirWithNodeModulesDir}
     yarnWorkDir = ${pathToYarnJs}
}

此外,您可能希望将您的outputs路径修复为:

outputs.dir = project.file("$buildDir/classes")

或者这样:

output.dir "$buildDir/classes"

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51926685

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档