我尝试通过将我自己的自定义java文件添加到类路径中来实现这一点
https://github.com/gigaSproule/swagger-gradle-plugin#model-converters
如上面的示例所示
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'com.custom:model-converter:1.0.0'
}
}
...
swagger {
apiSource {
...
modelConverters = [ 'com.custom.model.Converter' ]
}
}
这是我的密码
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath("com.test.app.profile.component.MyOpenApiCustomiser:1.0.0")
}
}
swagger {
apiSource {
...
modelConverters = [ 'com.test.app.profile.component.MyOpenApiCustomiser' ]
}
}
这是我得到的错误
A problem occurred configuring root project 'profile'.
> Could not resolve all artifacts for configuration ':classpath'.
> Could not find com.test.app.profile.component.MyOpenApiCustomiser:1.0.0:.
Required by:
project :
Possible solution:
- Declare repository providing the artifact, see the documentation at https://docs.gradle.org/current/userguide/declaring_repositories.html
我尝试删除1.0.0
Caused by: org.gradle.api.IllegalDependencyNotation: Supplied String module notation 'com.test.app.profile.component.MyOpenApiCustomiser' is invalid. Example notations: 'org.gradle:gradle-core:2.2', 'org.mockito:mockito-core:1.9.5:javadoc'
不知道我将如何让我的构建脚本在我的Spring Boot 应用程序中使用MyOpenApiCustomiser。有没有其他方法或如何修复这个问题?
1条答案
按热度按时间7nbnzgx91#
在
buildscript.dependencies {}
块中给出的classpath
依赖项需要是一个外部库,以标准的group:modulde:version符号给出;在github项目的示例中,它是“com.custom:模型转换器:1.0.0”(这是一个“假”库,并不真正存在于Maven中央回购库中,这只是一个例子)在您的例子中,您似乎试图将类
MyOpenApiCustomiser
作为类路径库引用,但这是不可行的。如果您想使用自己的Converter,则需要在另一个库/模块中实现它,将其发布到一个私有存储库,然后在buildscript类路径中使用它。
另一种更简单的方法是将此转换器实现为buildSrc项目中的一个类:这些类将自动出现在您的构建脚本类路径中,并且您可以在
apiSource
配置中使用它。样品:
1.在
buildSrc
项目中您的自定义
ModelConverter
类位于src/main/java
下,例如com.sample.MyCustomConverter
1.在您的根
build.gradle
脚本中:您可以引用您的
MyCustomConverter
类,它已经在脚本类路径中可用,无需在buildscript
中定义classpath
依赖项