Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/69.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
试图让swagger使用play framework v2.4运行_Swagger_Playframework 2.3_Swagger Ui_Swagger 2.0 - Fatal编程技术网

试图让swagger使用play framework v2.4运行

试图让swagger使用play framework v2.4运行,swagger,playframework-2.3,swagger-ui,swagger-2.0,Swagger,Playframework 2.3,Swagger Ui,Swagger 2.0,我正在尝试让swagger/swagger ui与PlayFrameworkV2.4(java应用程序)一起工作。我做了以下工作: a) 将swagger ui dist目录复制到/public/目录, b) 将index.html作为swagger.scala.html复制到app/views目录(同时添加play import语句、修改对静态资产的引用以及JS函数), c) 对“我的路线”文件进行了更改(复制如下)并 d) 添加了一个scala控制器(用于招摇过市) 如果我遗漏了任何步骤,有

我正在尝试让swagger/swagger ui与PlayFrameworkV2.4(java应用程序)一起工作。我做了以下工作:

a) 将swagger ui dist目录复制到/public/目录, b) 将index.html作为swagger.scala.html复制到app/views目录(同时添加play import语句、修改对静态资产的引用以及JS函数), c) 对“我的路线”文件进行了更改(复制如下)并 d) 添加了一个scala控制器(用于招摇过市)

如果我遗漏了任何步骤,有什么想法吗

当我尝试编译应用程序时,我在下面复制了错误(我的印象是ApiHelpController是play swagger模块的一部分,我不需要复制它。如果我没有正确遵循步骤,请分享

错误:

[error] /home/user/testapp/conf/routes:165: object ApiHelpController is not a member of package controllers
[error] Note: class ApiHelpController exists, but it has no companion object.
[error] GET         /api-docs.json               controllers.ApiHelpController.getResources
[error] /home/user/testapp/conf/routes:167: object ApiHelpController is not a member of package controllers
[error] Note: class ApiHelpController exists, but it has no companion object.
[error] GET         /api-docs.json/hello         controllers.ApiHelpController.getResource(path = "/accesses")
[error] two errors found
[error] (compile:compile) Compilation failed
路由文件

GET         /swagger                     @controllers.Application.swagger
GET         /api-docs.json               @controllers.ApiHelpController.getResources

GET         /api-docs.json/accesses         @controllers.ApiHelpController.getResource(path = "/accesses")
构建.sbt

libraryDependencies ++= Seq(
  "io.swagger" %% "swagger-play2" % "1.5.1",
  "org.webjars" % "swagger-ui" % "2.1.8-M1"
)
application.conf

大摇大摆 控制器

package controllers


import play.api.mvc._

class Application extends Controller {

    def swagger = Action {
      request =>
        Ok(views.html.swagger())
    }

  }
更新 在play v2.4中意识到这一点后,我可以在路由文件中的控制器前面使用带有“@”的依赖注入路由器(但之后我必须使用scala类而不是对象),我可以跳过上一个问题。我现在得到以下错误:

[error] /home/user/testapp/app/controllers/TestController.java:40: error: cannot find symbol
[error] @Api(value = "/accesses", description = "Test for Accesses")
[error]  ^
另一次更新 第二个问题是由于控制器中缺少导入语句造成的

在控制器中添加以下内容解决了此问题:

import io.swagger.annotations.*;

一旦我通过了帖子中提到的初始问题,我就能够让设置正常工作。在这个案例中,您使用的是什么样的招摇过市ui?您可以发送链接/github链接吗?在我的案例中,我使用了相同的东西,但在招摇过市“尝试一下”中不起作用。有人能在紧急情况下指导我吗?一旦我解决了帖子中提到的初始问题,我就能够让安装工作正常。在这种情况下,您使用的招摇过市ui是什么?您可以发送链接/github链接吗?在我的情况下,我使用了相同的东西,但在招摇过市中“尝试一下”有人能在紧急情况下指导我吗?
import io.swagger.annotations.*;