![](/img/trans.png)
[英]Missing input output annotations gradle 7.3 issue with java 17
[英]Update to Gradle 7.3, Java 17
我想将 gradle 从 5.6 更新到 7.3,但我做不到。 我在编译项目期间遇到了这个问题(我有 java 17)。 我读到 gradle >7 版本有一些问题,也许你知道出了什么问题? 谢谢你的回答
这是使用 gradle 7.3 编译项目后的日志:
Some problems were found with the configuration of task ':api:TemplateServices-api:generateSwaggerCodeDocs' (type 'GenerateSwaggerCode').
- In plugin 'org.hidetake.swagger.generator' type 'org.hidetake.gradle.swagger.generator.GenerateSwaggerCode' property 'adaptorFactory' is missing an input or output annotation.
Reason: A property without annotation isn't considered during up-to-date checking.
Possible solutions:
1. Add an input or output annotation.
2. Mark it as @Internal.
Please refer to https://docs.gradle.org/7.3/userguide/validation_problems.html#missing_annotation for more details about this problem.
- In plugin 'org.hidetake.swagger.generator' type 'org.hidetake.gradle.swagger.generator.GenerateSwaggerCode' property 'configFile' is annotated with @InputFile but missing a normalization strategy.
Reason: If you don't declare the normalization, outputs can't be re-used between machines or locations on the same machine, therefore caching efficiency drops significantly.
Possible solution: Declare the normalization strategy by annotating the property with either @PathSensitive, @Classpath or @CompileClasspath.
Please refer to https://docs.gradle.org/7.3/userguide/validation_problems.html#missing_normalization_annotation for more details about this problem.
- In plugin 'org.hidetake.swagger.generator' type 'org.hidetake.gradle.swagger.generator.GenerateSwaggerCode' property 'wipeOutputDir' of type boolean shouldn't be annotated with @Optional.
Reason: Properties of primitive type cannot be optional.```
更改版本插件 swagger 后更新当我将版本 gradle.plugin.org.hidetake:gradle-swagger-generator-plugin 从 2.18.1 更改为 2.19.2 时,我有新的异常。 也许 swagger 与 gradle 7.3 或什么不兼容?
这是我现在的期望:
19:12:47.775 [Thread-0] WARN i.s.codegen.v3.utils.URLPathUtil - Not valid URL: /api
java.net.MalformedURLException: no protocol: /api
at java.base/java.net.URL.<init>(URL.java:674)
at io.swagger.codegen.v3.utils.URLPathUtil.getServerURL(URLPathUtil.java:31)
at io.swagger.codegen.v3.utils.URLPathUtil.getScheme(URLPathUtil.java:77)
at io.swagger.codegen.v3.DefaultGenerator.buildSupportFileBundle(DefaultGenerator.java:673)
at io.swagger.codegen.v3.DefaultGenerator.generate(DefaultGenerator.java:725)
at io.swagger.codegen.v3.cli.cmd.Generate.run(Generate.java:342)
at java.base/java.lang.Thread.run(Thread.java:833)
Exception in thread "Thread-0" java.lang.RuntimeException: Could not generate supporting file 'SupportingFile:
templateFile: index.mustache
folder:
destinationFilename: index.html
'
at io.swagger.codegen.v3.DefaultGenerator.generateSupportingFiles(DefaultGenerator.java:604)
at io.swagger.codegen.v3.DefaultGenerator.generate(DefaultGenerator.java:726)
at io.swagger.codegen.v3.cli.cmd.Generate.run(Generate.java:342)
at java.base/java.lang.Thread.run(Thread.java:833)
Caused by: com.github.jknack.handlebars.HandlebarsException: /handlebars/htmlDocs2/sample_java.mustache:1:10: java.lang.reflect.InaccessibleObjectException: Unable to make public boolean java.util.Collections$EmptyMap.isEmpty() acce
ssible: module java.base does not "opens java.util" to unnamed module @21b2e768
/handlebars/htmlDocs2/sample_java.mustache:1:10
at java.base/java.lang.reflect.Method.setAccessible(Method.java:193)
...
com.github.jknack.handlebars.internal.BaseTemplate.apply(BaseTemplate.java:118)
at io.swagger.codegen.v3.templates.HandlebarTemplateEngine.getRendered(HandlebarTemplateEngine.java:25)
at io.swagger.codegen.v3.DefaultGenerator.generateSupportingFiles(DefaultGenerator.java:575)
... 3 more
Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make public boolean java.util.Collections$EmptyMap.isEmpty() accessible: module java.base does not "opens java.util" to unnamed module @21b2e768
... 74 more
* What went wrong:
> Error while evaluating property 'configOptions' of task ':api:TemplateServices-api:openApiGenerate'
> Failed to calculate the value of task ':api:TemplateServices-api:openApiGenerate' property 'configOptions'.
> Failed to query the value of extension 'openApiGenerate' property 'configOptions'.
> Cannot get the value of a property of type java.util.Map with value type java.lang.String as the source contains a value of type java.lang.Boolean```
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.