2016-11-13 11 views
9

Próbuję opracować niestandardową wtyczkę w cordova, która da mi lokalizację w każdym określonym przedziale. Problem polega na tym, że nie mam żadnego pliku package.json w tym katalogu wtyczek.Nieprawidłowe package.json w niestandardowej wtyczce cordova

Kiedy próbuję dodać tę wtyczkę do naszego projektu cordova otrzymuję komunikat o błędzie Nieprawidłowy pakiet.json.

Proszę mi pomóc Jestem nowy w Cordova. Co muszę zrobić, aby rozwiązać ten błąd.

Używam tego polecenia, aby dodać wtyczkę w projekcie

cordova plugin add ../loccation_plugin/LocationPlugin/ 

Odpowiedz

12

Miałem ten sam problem podczas dodawania niestandardowej wtyczki do projektu. Używam narzędzia plugman do tworzenia niestandardowych wtyczek i najprawdopodobniej też używasz narzędzia plugman.

Jeśli tak jest, to wykonać następujące polecenie, aby wygenerować poprawny package.json:

plugman createpackagejson "path of your plugin" 

to poprosi podstawowe pytanie o wtyczki i wygeneruje plik package.json w oparciu o niego.

+1

proszę mi pomóc i mam dodane w tym katalogu, ale to pokazuje błąd jak „pkg nie jest zdefiniowana ", .. ,, –

+0

" pkg "nie jest zdefiniowany –

+0

to był błąd w plug-inie cli, który został ostatnio rozwiązany. Sprawdź następujący adres URL: https: //github.com/apache/cordova-lib/pull/597 –

0

Mam ten sam błąd.

Po rozumowania w tym answer zdałem sobie sprawę, że gdy staramy się zainstalować wtyczkę Cordova z folderu: Nazwa folderu docelowego musi być taka sama, z ID wtyczki

1

miałem ten sam problem w Windowsie podczas pracy nad moją własną wtyczką i wygląda na to, że problemem jest lokalizacja wtyczki (Lokalizacja dysku lokalnego).

Na przykład, Cordova Projekt znajduje się w E:/projects/cordova-project i mam wtyczki w 2 różnych dyskach:

  • zwyczaj-plugin-main: C:/plugins/myawesome-plugin-name
  • zamówienie wtórny-plugin: E:/plugins/myawesome-plugin-name

Chociaż projekt i wtyczka znajdują się na tym samym dysku, jeśli zainstaluję wtyczkę z dysku :

cordova plugin add E:/plugins/myawesome-plugin-name 

Wyjątek zostanie wyrzucony, ale jeśli mogę zainstalować go z dysku C::

cordova plugin add C:/plugins/myawesome-plugin-name 

Następnie wtyczki powinny być zainstalowane pomyślnie:

Cordova Plugin Error: Invalid package.json

Należy pamiętać, że wtyczki jest taki sam, ale w różnych folderach i dyskach ... To dość dziwne, jednak rozwiązało problem dla mnie.

0

Mam ten błąd po uruchomieniu tego polecenia w cygwin. Moim rozwiązaniem było uruchomienie polecenia cordova z cmd. Podobnie jak w innych postach dotyczących tego błędu, istnieje problem ze ścieżką wtyczki.

0

Rozwiązałem ten problem, generując plik package.json za pomocą narzędzia Plugman, a także musiałem przenieść moją wtyczkę z podkatalogu w moim projekcie Cordova do katalogu głównego mojego projektu Cordova.

Innymi słowy, przeniosłem wtyczki od:

my-cordova-project/extras/plugins

do:

my-cordova-project

3

i spełniają takie same 'pkg nie jest zdefiniowany' problem. następnie próbuję użyć "npm init" do utworzenia pliku package.json i powodzenia.

+0

Testowane i to działa. Przejdź do lokalnego katalogu wtyczki, uruchom npm init z domyślnymi ustawieniami, a następnie wróć do katalogu cordova i uruchom "cordova plugin add <ścieżka do lokalnego katalogu z wtyczką>" – MikeB

1

miałem ten sam problem, ale użył tego npm init zamiast naciśnij Enter i wpisać dane jak poprosił o cmd