Gradle 如何在包含的通用构建脚本中使用插件

标签 gradle plugins

项目A:

   apply from : 'common.gradle'

common.gradle
plugins {
    id 'com.eriwen.gradle.js' version '2.14.1'
}

apply plugin: 'js'

import com.eriwen.gradle.js.tasks.MinifyJsTask;

task minify(type: MinifyJsTask) {
   ...
}

错误
Only Project build scripts can contain plugins {} blocks

如果插件 block 移动到项目 A,

错误
unable to resolve class com.eriwen.gradle.js.tasks.MinifyJsTask

如何在包含的构建脚本(称为脚本插件)中使用插件(来自公共(public)责任)?

最佳答案

这是一种方法。 (我使用 this page 作为资源,但不确定它是否仍然准确。)使用 Gradle 4.0:

给定 build.gradle :

apply from: 'common.gradle'

这里是 common.gradle :
buildscript {
  repositories {
    maven {
      url "https://plugins.gradle.org/m2/"
    }
  }
  dependencies {
    classpath "com.eriwen:gradle-js-plugin:2.14.1"
  }
}

apply plugin: com.eriwen.gradle.js.JsPlugin 

task minify(type: com.eriwen.gradle.js.tasks.MinifyJsTask) {
    // ...
}

关于Gradle 如何在包含的通用构建脚本中使用插件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44956094/

相关文章:

Android studio Gradle 图标错误,Manifest Merger

android-studio - 尝试在Android Studio中编译代码时Google API gradle错误

java - Gradle jpackage 创建无法运行的应用程序

gradle - task.setupAll.dependsOn(copyJars)在gradle中不起作用吗?

c# - .NET多代理程序仿真(运行时加载/卸载)的插件体系结构

javascript - Fullpage.js 使用连续滚动或循环时禁用 moveSectionUp

java - Android - 使用签名的 APK 时应用程序崩溃

javascript - 如何添加 printThis() 元素异常?

java - Eclipse 插件开发 - ClassCastException 无法将 abc.xyz 转换为 abc.xyz

android - 如何调试第三方flutter插件