2016-03-07 57 views
2

我有一個Gradle構建,其中一個大的JSON配置被捆綁到一個包中,以便稍後上載到服務器上。有時,當對文件進行更改時,該文件不再有效,從而無法在服務器上進行上載。如何在Gradle構建中驗證JSON

我想通過在Gradle構建中添加一個驗證步驟來找到這個。

當東張西望我無法找到一個文件的方式來做到這一點,我看到了項目gradle-json-validator這看起來很有希望,但目前還沒有任何文件,所以我不知道這是如何使用的?

Gradle-json-validator上的任何提示或其他任何方式來驗證JSON文件作爲Gradle構建步驟的一部分?

+0

可能有關。 http://stackoverflow.com/questions/22228647/android-gradle-and-duplicate-files-error-during-packaging –

+0

是的,但包含很多關於Android建築的東西,我不是那麼想看。我正在與gradle-json-validator的作者聯繫,並且在文檔處於可用狀態時更新此問題。 – centic

回答

2

從源代碼,這似乎用法是:

buildscript { 
    repositories { 
     jcenter() 
    } 
    dependencies { 
     classpath 'cz.alenkacz.gradle:json-validator:0.9.9' 
    } 
} 

apply plugin: 'cz.alenkacz.gradle.jsonvalidator' 

插件似乎並沒有以具有延伸做配置。但似乎使用jsonSchematargetJsonFile作爲輸入模式和文件驗證。我會嘗試在build.gradle

validateJson.jsonSchema = new File('/path/to/schema') 
validateJson.targetJsonFile = new File('/path/to/jsonFile') 

根水平和運行任務設置它們是:

gradle validateJson 
+0

嗯,沒有這樣工作,因爲「targetJsonFile = File('/ path/to/jsonFile')」,我得到「找不到方法File()」。對於「targetJsonFile ='路徑/到/ jsonFile'」,我得到「沒有這樣的屬性:targetJsonFile的類:org.gradle.api.internal.project.DefaultProject_Decorated」 – centic

+0

'jsonSchema'行沒有錯誤? – RaGe

+0

已更新。這似乎對我有用。 – RaGe