我使用gradle-node-plugin而不是frontend maven-plugin。
maven中的"yarn run-script build“任务是这样编写的:
<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任务
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“属性不存在?
我该怎么办?遗漏了什么?
如果信息不足,请让我知道。
谢谢。
发布于 2018-08-21 13:12:13
尝试在NodeExtension中配置yarnWorkDir和nodeWorkDir:
NodeExtension node = project.extensions.getByType(NodeExtension.class)
node.with {
nodeModulesDir = ${pathToDirWithNodeModulesDir}
yarnWorkDir = ${pathToYarnJs}
}此外,您可能希望将您的outputs路径修复为:
outputs.dir = project.file("$buildDir/classes")
或者这样:
output.dir "$buildDir/classes"
https://stackoverflow.com/questions/51926685
复制相似问题