Как запустить json-schema-validator из командной строки

Можно ли запустить json-schema-validator из командной строки?

Есть ли файл jar для json-schema-validator? Я нашел баночку по адресу:

 [http://mvnrepository.com/artifact/com.github.fge/json-schema-validator/2.1.8][1]

но он кажется поврежденным/неполным/что-то (я не программист Java). Применение java.exe к файлу jar:

 java -jar json-schema-validator-2.1.8.jar

приводит к этому сообщению об ошибке:

 "no main manifest attribute, in json-schema-validator-2.1.8.jar"

Что это значит?

Вот мои вопросы:

  1. Где я могу получить правильный файл jar для json-schema-validator?

  2. Как только я получу файл jar, как мне использовать его в командной строке для проверки файла json на файл схемы json? То есть в командной строке я хотел бы набрать что-то вроде этого:

 java -jar json-schema-validator-2.1.8.jar instance.json schema.json

и попросите валидатора проверить instance.json на соответствие schema.json и отобразить результаты проверки в командной строке.

Спасибо!


person Roger Costello    schedule 04.04.2014    source источник
comment
не все банки исполняемые. Если процессора командной строки нет, вы все равно можете написать свой, добавить в банку и сделать его исполняемым — см. mkyong.com/java/how-to-make-an-executable-jar-file   -  person Leo    schedule 04.04.2014
comment
(автор здесь) Как мы обсуждали по почте, это запланированная функция для 2.2.0; Следите за обновлениями ;)   -  person fge    schedule 05.04.2014


Ответы (2)


Хорошо, начиная с версии 2.1.10 вы действительно можете это сделать. Инструкции приведены в README проекта. Вот справка текущей версии:

$ java -Done-jar.silent=true -jar json-schema-validator-2.1.10-standalone.jar --help
Syntax: java -jar jsonschema.jar [options] file [file...]

Options: 
    -s, --brief: only show validation status (OK/NOT OK)
    --help: show this help
    -q, --quiet: no output; exit with the relevant return code (see below)
    --syntax: check the syntax of schema(s) given as argument(s)

Exit codes:
    0: validation successful;
    1: exception occurred (appears on stderr)
    2: command line syntax error (missing argument, etc)
    100: one or more file(s) failed validation
    101: one or more schema(s) is/are invalid
person fge    schedule 11.04.2014
comment
В версии 2.2.x синопсис более ясен — файл схемы указан первым: java -jar jsonschema.jar [options] файл схемы [файл...] (где jar на самом деле является /json-schema-validator-${JSV_VERSION }-lib.jar файл, который является исполняемым и содержит все зависимости) - person djb; 21.12.2016

Также вы можете попробовать собрать и установить инструмент C++ https://bitbucket.org/gallen/libvariant, который решает твоя проблема.

Команда Cli — варш

person darky    schedule 14.04.2016