我一直在使用插件来生成一些文档。当我将代码放在build.gradle中为每个包时,它可以很好地工作。
然而,我没有在多个build.gradle文件中使用此插件,而是将其放在一个单独的gradle脚本中,以使所有内容更加集中。
然而,当我这样做时,我收到错误:
Plugin with id 'com.benjaminsproule.swagger' not found.
尽管代码与build.gradle文件中的代码完全相同。
以下是导入插件并使用它的代码:
buildscript {
repositories {
maven {url "http://jcenter.bintray.com"}
}
dependencies {
classpath 'com.benjaminsproule:swagger-gradle-plugin:0.0.8'
}
}
apply plugin: 'com.benjaminsproule.swagger'
swagger {
apiSource {
springmvc = false
locations = ['package1']
info {
title = 'Package 1'
version = 'v1'
description = 'Documentation for Package 1'
}
swaggerDirectory = "${project.rootDir}/reports/Package1"
}
apiSource {
springmvc = false
locations = ['package2']
info {
title = 'Package 2'
version = 'v1'
description = 'Documentation for Package 2'
}
swaggerDirectory = "${project.rootDir}/reports/Package2"
}
}
所以我想把这一切从build.gradle转移到一个名为swagger.gradle的文件,这可能吗?
我也使用以下方式运行插件:
gradle swagger
答案 0 :(得分:0)
我自己想出一个解决方案,对于遇到这个问题的任何人都可能有用。
我创建了一个Swagger.gradle文件,其中包含buildscript和build.gradle,然后在插件中调用。
对于Apply插件,我必须直接调用插件的主类。 Swagger.gradle
WebView
的build.gradle
buildscript {
repositories {
maven {url "http://jcenter.bintray.com"}
}
dependencies {
classpath 'com.benjaminsproule:swagger-gradle-plugin:0.0.8'
}
}
apply plugin: com.benjaminsproule.swagger.gradleplugin.GradleSwaggerPlugin
相信此博客:http://mrhaki.blogspot.co.uk/2015/10/gradle-goodness-apply-external-script.html