无法使用springdoc-openapi-maven-plugin生成Swagger.json文件

6mw9ycah  于 2024-01-05  发布在  Spring
关注(0)|答案(3)|浏览(181)

我尝试在maven构建时生成Swagger.json文件。
这是我的插件在pom.xml从docs

  1. <plugin>
  2. <groupId>org.springframework.boot</groupId>
  3. <artifactId>spring-boot-maven-plugin</artifactId>
  4. <executions>
  5. <execution>
  6. <id>pre-integration-test</id>
  7. <goals>
  8. <goal>start</goal>
  9. </goals>
  10. </execution>
  11. <execution>
  12. <id>post-integration-test</id>
  13. <goals>
  14. <goal>stop</goal>
  15. </goals>
  16. </execution>
  17. </executions>
  18. </plugin>
  19. <plugin>
  20. <groupId>org.springdoc</groupId>
  21. <artifactId>springdoc-openapi-maven-plugin</artifactId>
  22. <version>0.2</version>
  23. <executions>
  24. <execution>
  25. <id>integration-test</id>
  26. <goals>
  27. <goal>generate</goal>
  28. </goals>
  29. </execution>
  30. </executions>
  31. <configuration>
  32. <apiDocsUrl>http://localhost:8080/registrationprocessor/v1/registrationstatus</apiDocsUrl>
  33. <outputFileName>openapi.json</outputFileName>
  34. <outputDir>${project.build.directory}</outputDir>
  35. </configuration>
  36. </plugin>

字符串
我见过这个repo。它在单独的项目中运行良好,但当我试图在我的项目中运行时。它给出了java.net.ConnectException: Connection refused (Connection refused)

完整错误信息

  1. [INFO] --- springdoc-openapi-maven-plugin:0.2:generate (integration-test) @ registration-processor-registration-status-service ---
  2. [ERROR] An error has occured
  3. java.net.ConnectException: Connection refused (Connection refused)
  4. at java.net.PlainSocketImpl.socketConnect (Native Method)
  5. at java.net.AbstractPlainSocketImpl.doConnect (AbstractPlainSocketImpl.java:399)
  6. at java.net.AbstractPlainSocketImpl.connectToAddress (AbstractPlainSocketImpl.java:242)
  7. at java.net.AbstractPlainSocketImpl.connect (AbstractPlainSocketImpl.java:224)
  8. at java.net.Socket.connect (Socket.java:609)
  9. at java.net.Socket.connect (Socket.java:558)
  10. at sun.net.NetworkClient.doConnect (NetworkClient.java:182)
  11. at sun.net.www.http.HttpClient.openServer (HttpClient.java:474)
  12. at sun.net.www.http.HttpClient.openServer (HttpClient.java:569)
  13. at sun.net.www.http.HttpClient.<init> (HttpClient.java:242)
  14. at sun.net.www.http.HttpClient.New (HttpClient.java:341)
  15. at sun.net.www.http.HttpClient.New (HttpClient.java:362)
  16. at sun.net.www.protocol.http.HttpURLConnection.getNewHttpClient (HttpURLConnection.java:1253)
  17. at sun.net.www.protocol.http.HttpURLConnection.plainConnect0 (HttpURLConnection.java:1187)
  18. at sun.net.www.protocol.http.HttpURLConnection.plainConnect (HttpURLConnection.java:1081)
  19. at sun.net.www.protocol.http.HttpURLConnection.connect (HttpURLConnection.java:1015)
  20. at sun.net.www.protocol.http.HttpURLConnection.getInputStream0 (HttpURLConnection.java:1592)
  21. at sun.net.www.protocol.http.HttpURLConnection.getInputStream (HttpURLConnection.java:1520)
  22. at java.net.HttpURLConnection.getResponseCode (HttpURLConnection.java:527)
  23. at org.springdoc.maven.plugin.SpringDocMojo.execute (SpringDocMojo.java:43)
  24. at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo (DefaultBuildPluginManager.java:137)
  25. at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:210)
  26. at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:156)
  27. at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:148)
  28. at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:117)
  29. at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:81)
  30. at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build (SingleThreadedBuilder.java:56)
  31. at org.apache.maven.lifecycle.internal.LifecycleStarter.execute (LifecycleStarter.java:128)
  32. at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:305)
  33. at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:192)
  34. at org.apache.maven.DefaultMaven.execute (DefaultMaven.java:105)
  35. at org.apache.maven.cli.MavenCli.execute (MavenCli.java:957)
  36. at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:289)
  37. at org.apache.maven.cli.MavenCli.main (MavenCli.java:193)
  38. at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0 (Native Method)
  39. at jdk.internal.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:62)
  40. at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43)
  41. at java.lang.reflect.Method.invoke (Method.java:566)
  42. at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced (Launcher.java:282)
  43. at org.codehaus.plexus.classworlds.launcher.Launcher.launch (Launcher.java:225)
  44. at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode (Launcher.java:406)
  45. at org.codehaus.plexus.classworlds.launcher.Launcher.main (Launcher.java:347)


我已经尝试了所有的this堆栈溢出问题的答案,这个github issue,但不幸的是,他们没有为我工作。
如有任何帮助,我们将不胜感激。

bihw5rsg

bihw5rsg1#

看起来你的应用程序没有在端口8080上运行。检查你的Spring配置,也许你设置了一个不同的端口?

6qqygrtg

6qqygrtg2#

有完全相同的问题,我使用的端口不是8080,为了解决这个问题,我添加了

  1. <configuration>
  2. <apiDocsUrl>http://localhost:<ENTER PORT HERE>/v3/api/docs</apiDocsUrl>
  3. </configuration>

字符串
到springdoc-openapi-maven-plugin <plugin>部分
来源:插件的文档(https://github.com/springdoc/springdoc-openapi-maven-plugin

ohtdti5x

ohtdti5x3#

Openapi.json文件是在将application.properties的一些配置从test文件夹移动到src文件夹中bootstrap.properties后生成的。但每次我都必须杀死端口9001以生成json文件。

相关问题