我希望能够在我的jhipster应用程序中看到swagger rest api文档,即使它在prod配置文件下运行。目前它只显示在开发配置文件中,我不确定它的配置位置。
答案 0 :(得分:2)
Swagger配置位于config/apidoc/SwaggerConfiguration.java
您只需删除排除prod配置文件的行:
@Profile("!"+Constants.SPRING_PROFILE_PRODUCTION)
答案 1 :(得分:2)
在最新版本中,将代码添加到application.prod.yml
配置文件: 包括:swagger
答案 2 :(得分:1)
不,永远不要那样做。请参阅 webapp / app / app.constants.js 文件。运行gulp命令时会自动生成 。如果您想显示Swagger API,请查看该文件。
(function () {
"use strict";
// DO NOT EDIT THIS FILE, EDIT THE GULP TASK NGCONSTANT SETTINGS INSTEAD WHICH GENERATES THIS FILE
angular.module("sosickApp")
.constant("ENV", "dev")
.constant("VERSION", "0.0.1-SNAPSHOT")
;
})();
和gulpfile.js任务:
gulp.task('ngconstant:dev', function () {
return ngConstant({
dest: 'app.constants.js',
name: 'sosickApp',
deps: false,
noFile: true,
interpolate: /\{%=(.+?)%\}/g,
wrap:
'(function () {\n' +
' "use strict";\n' +
' // DO NOT EDIT THIS FILE, EDIT THE GULP TASK NGCONSTANT SETTINGS INSTEAD WHICH GENERATES THIS FILE\n' +
' {%= __ngModule %}\n' +
'})();\n',
constants: {
ENV: 'dev',
VERSION: util.parseVersion()
}
})
.pipe(gulp.dest(config.app + 'app/'));
});
祝你好运!
答案 3 :(得分:1)
对于在这里的每个人来说,都是因为想知道为什么尽管将其设置为正确的readlink -f file.txt
配置文件属性(如在swagger
中的答案一样),但为什么在heroku安装中未在产品上启用swagger, application-prod.yml
,application-heroku.yml
环境变量,SPRING_PROFILES_ACTIVE
自定义环境变量中mvn
环境变量中的MAVEN_CUSTOM_OPTS
启动参数...
似乎heroku产品运行将使用的实际配置文件位于heroku:config
中。因此,在尝试了上述所有可能性之后,我必须更改它。希望此消息可以节省别人的时间。
大张旗鼓地生产产品不是一个好习惯,但实际上可以满足业务需求,因此我们甚至不尝试将其私有化。
答案 4 :(得分:0)
允许最新的JHipster设置显示/隐藏Swagger API。
答案 5 :(得分:0)
在JHipster版本4.5.6中,使用Maven,您可以直接启用swagger配置文件:
./ mvnw -Pprod,swagger
使用Gradle,您也可以直接使用这些配置文件:
./ gradlew -Pprod -Pswagger
请注意,默认情况下,通过在application.yml中设置spring.profiles.include属性,在prod中禁用swagger配置文件并在dev中启用。
有关详细信息,请参阅jhipster profiles
答案 6 :(得分:0)
也许这还不能解决问题,但是在当前的JHipster上,可以通过命令行args或通过2个文件来启用它:
spring: profiles: active: dev include: - swagger
isSwaggerEnabled:是
然后,您可以在浏览器上通过/swagger-ui/index.html访问 希望这会有所帮助