Как решить, почему Wavi находит ошибки synatx в проекте Cordova, который успешно создается и запускается? - PullRequest
0 голосов
/ 27 апреля 2020

У меня есть существующий проект Cordova, для которого я хочу создать диаграмму UML, чтобы улучшить мое понимание проекта и определить, как лучше всего изменить определенные функции c, не изменяя кодовую базу.

Я нашел простой в установке пакет, доступный через npm под названием wavi, который я установил с флагом -g. После установки я запустил его из верхней папки проекта Cordova. Я получаю следующий вывод, который предлагает следующие возможности (которые не должны рассматриваться как взаимоисключающие):

  • В проектах Cordova есть что-то, что делает их неприменимыми к wavi
  • Что-то не так с моей wavi установкой или настройкой
  • На самом деле есть ошибки где-то в указанных CSS файлах (возможно, мне нужен какой-то CSS отладчик, если это так)
    • Я просмотрел эти файлы, но я не заметил ничего недопустимого с моей точки зрения новичка: CSS
  • На самом деле существует набор из одной или нескольких функций где-то в пределах wavi, которые не используются как определено (я не совсем уверен, что это значит)
$ wavi /path/to/project ~/project_UML.svg
Processing website: /path/to/project
File contain syntax error: /path/to/project/www/css/style.css
File contain syntax error: /path/to/project/platforms/android/app/src/main/assets/www/css/style.css
File contain syntax error: /path/to/project/platforms/android/app/build/intermediates/merged_assets/debug/mergeDebugAssets/out/www/css/style.css
finished analyzing, now generating graph
7
7
abort(7) at Error
    at Ga (/usr/local/lib/node_modules/wavi/es5/lib/viz.js:49:124)
    at Fa (/usr/local/lib/node_modules/wavi/es5/lib/viz.js:49:22)
    at v (/usr/local/lib/node_modules/wavi/es5/lib/viz.js:1172:101)
    at Array.M5 (/usr/local/lib/node_modules/wavi/es5/lib/viz.js:1157:32623)
    at OA (/usr/local/lib/node_modules/wavi/es5/lib/viz.js:1145:56755)
    at $B (/usr/local/lib/node_modules/wavi/es5/lib/viz.js:1145:84215)
    at qf (/usr/local/lib/node_modules/wavi/es5/lib/viz.js:1147:119933)
    at Af (/usr/local/lib/node_modules/wavi/es5/lib/viz.js:1147:125753)
    at zf (/usr/local/lib/node_modules/wavi/es5/lib/viz.js:1147:124812)
    at Array.sf (/usr/local/lib/node_modules/wavi/es5/lib/viz.js:1147:120612)
If this abort() is unexpected, build with -s ASSERTIONS=1 which can give more information.
(node:16698) V8: /usr/local/lib/node_modules/wavi/es5/lib/viz.js:1151 Invalid asm.js: Function use doesn't match definition
Graph generated: ~/project_UML.svg
Execution time: 7.77

Файл ~/project_UML.svg после выполнения этой команды существовал, однако пытался открыть в Gimp появилось диалоговое окно, сообщающее, что файл на самом деле пуст. Естественно, что проще всего сделать следующее, увидев это, попробуйте добавить флаг -s ASSERTIONS=1, который я пробовал.

$ wavi -s ASSERTIONS=1 /path/to/project ~/project_UML.svg
Processing website: /path/to/project/-s
finished analyzing, now generating graph
(node:16853) V8: /usr/local/lib/node_modules/wavi/es5/lib/viz.js:1151 Invalid asm.js: Function use doesn't match definition
Graph generated: /path/to/project/ASSERTIONS=1
Execution time: 0.242

Как видите, wavi просто интерпретировал эти флаги как аргументы для пути проекта и выходной. Это приводит к некоторой путанице с моей стороны относительно того, почему рекомендуемые флаги не работают должным образом.

Как решить, почему Wavi находит ошибки synatx в этом проекте Cordova, который успешно создается и работает?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...