试图让swagger使用play framework v2.4运行
我正在尝试让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模块的一部分,我不需要复制它。如果我没有正确遵循步骤,请分享 错误:试图让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控制器(用于招摇过市) 如果我遗漏了任何步骤,有
[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.*;