2017-01-23 98 views
0

我想在運行時創建有效的swagger.json文件。蠻力的方法是在我的程序中模擬整個薩格爾規格,然後手動建立swagger.json,承擔所有對我有效性的責任。在java/scala中創建swagger.json

我的問題是:是否有任何圖書館或swagger本身的一部分,可以幫助我?我不想根據一些現有的服務器代碼生成文件,而是在運行時創建它並以字符串形式輸出。

+0

看看這個:[http://stackoverflow.com/questions/34340330/generate-yaml-or-json-file-from-swagger-documentation/34636944#34636944](http:// stackoverflow.com/questions/34340330/generate-yaml-or-json-file-from-swagger-documentation/34636944#34636944) –

回答

1

這是很不清楚你以後,但我猜它是下列之一。

  1. 您可以創建一個POJO並將其呈現爲一個Swagger JSON或YAML描述。爲此,只需使用swagger-core並使用Json.pretty(swaggerPojo)或Yaml.pretty(swaggerPojo)編寫它。然後你差不多保證了一個有效的swagger定義,雖然它不是肯定的,因爲你可以通過編程來構建無效的東西。但從結構上講,你應該沒問題。

  2. 您可以使用http://swagger.io/tools中列出的各種庫集成生成新的服務器代碼。這些可以使用代碼註釋,註釋等來自動生成放大器定義。

+0

對不清楚,我的意思是第1點。謝謝你的回答,但搖擺的核心是huuuge,是否有任何示例如何做到這一點?我的意思是,我應該使用這個龐大的代碼庫中的哪些類。 – Krever

+0

將swagger模型添加爲依賴項,然後您可以使用POJOS的簡單構建器方法。 Swagger模型不是一個很大的代碼庫,那裏有75個簡單的模型代表整個OAI規範。 – fehguy