Scala Play openapi 生成器项目缺少导入
Scala Play openapi generator project has missing imports
我想在 scala-play 中创建一个简单的“新闻 api”,其中服务器存根是使用 openapi scala-play-server 生成器生成的。 (因此我使用这个 https://drive.google.com/file/d/1Qez3JcdaBPNVq1BAWrgcS_sbyDrxAQKM/view?usp=sharing 打开 api 文件)
以下命令用于生成项目:
openapi-generator generate -g scala-play-server --additional-properties=basePackage=de.hwrBerlin.lehre.effort.newsapi,apiPackage=de.hwrBerlin.lehre.effort.newsapi.generated.api,modelPackage=de.hwrBerlin.lehre.effort.newsapi.generated.model -o api -i openapi.yaml
但是当我开始 运行 使用 sbt run
的项目然后打开 localhost:9000 时,我遇到了几个错误:
[info] Compiling 14 Scala sources and 2 Java sources to D:\Programmieren\Effort\newsapi\api\target\scala-2.12\classes ...
[error] D:\Programmieren\Effort\newsapi\api\app\de\hwrBerlin\lehre\effort\newsapi\ErrorHandler.scala:3:28: not found: type DefaultHttpErrorHandler
[error] class ErrorHandler extends DefaultHttpErrorHandler {
[error] ^
[error] D:\Programmieren\Effort\newsapi\api\app\de\hwrBerlin\lehre\effort\newsapi\ErrorHandler.scala:5:47: not found: type Future
[error] e: Throwable): Future[Result] = e match {
...
[error] D:\Programmieren\Effort\newsapi\api\app\de\hwrBerlin\lehre\effort\newsapi\generated\model\News.scala:21:54: not found: value Json
[error] implicit lazy val newsJsonFormat: Format[News] = Json.format[News]
[error] ^
[error] 49 errors found
[error] (Compile / compileIncremental) Compilation failed
[error] application -
(完整堆栈跟踪请看这里 https://drive.google.com/file/d/16bdEtOROIGPUIMJvabn3lR4UCnUO4j6V/view?usp=sharing)
似乎遗漏了很多问题,但我不知道如何解决问题,只能手动解决。
我使用 windows 10 和 AdoptOpenJDK 版本“11.0.8”
此问题是当前 openapi-generator 版本 (4.y.z) 中的错误。
我在 github:
上开了一个问题
https://github.com/OpenAPITools/openapi-generator/issues/7371
和wing328(OpenAPI Generator的核心团队和创始成员)建议使用openapi-generator的5.0.0-beta2。这解决了所有导入和依赖性问题。
我想在 scala-play 中创建一个简单的“新闻 api”,其中服务器存根是使用 openapi scala-play-server 生成器生成的。 (因此我使用这个 https://drive.google.com/file/d/1Qez3JcdaBPNVq1BAWrgcS_sbyDrxAQKM/view?usp=sharing 打开 api 文件)
以下命令用于生成项目:
openapi-generator generate -g scala-play-server --additional-properties=basePackage=de.hwrBerlin.lehre.effort.newsapi,apiPackage=de.hwrBerlin.lehre.effort.newsapi.generated.api,modelPackage=de.hwrBerlin.lehre.effort.newsapi.generated.model -o api -i openapi.yaml
但是当我开始 运行 使用 sbt run
的项目然后打开 localhost:9000 时,我遇到了几个错误:
[info] Compiling 14 Scala sources and 2 Java sources to D:\Programmieren\Effort\newsapi\api\target\scala-2.12\classes ...
[error] D:\Programmieren\Effort\newsapi\api\app\de\hwrBerlin\lehre\effort\newsapi\ErrorHandler.scala:3:28: not found: type DefaultHttpErrorHandler
[error] class ErrorHandler extends DefaultHttpErrorHandler {
[error] ^
[error] D:\Programmieren\Effort\newsapi\api\app\de\hwrBerlin\lehre\effort\newsapi\ErrorHandler.scala:5:47: not found: type Future
[error] e: Throwable): Future[Result] = e match {
...
[error] D:\Programmieren\Effort\newsapi\api\app\de\hwrBerlin\lehre\effort\newsapi\generated\model\News.scala:21:54: not found: value Json
[error] implicit lazy val newsJsonFormat: Format[News] = Json.format[News]
[error] ^
[error] 49 errors found
[error] (Compile / compileIncremental) Compilation failed
[error] application -
(完整堆栈跟踪请看这里 https://drive.google.com/file/d/16bdEtOROIGPUIMJvabn3lR4UCnUO4j6V/view?usp=sharing)
似乎遗漏了很多问题,但我不知道如何解决问题,只能手动解决。 我使用 windows 10 和 AdoptOpenJDK 版本“11.0.8”
此问题是当前 openapi-generator 版本 (4.y.z) 中的错误。 我在 github:
上开了一个问题https://github.com/OpenAPITools/openapi-generator/issues/7371
和wing328(OpenAPI Generator的核心团队和创始成员)建议使用openapi-generator的5.0.0-beta2。这解决了所有导入和依赖性问题。