2013-08-20 21 views
20

Próbuję uruchomić pakiet lokalny na Meteor.Instalowanie lokalnego pakietu Meteor

Mam poprawny pakiet package.js, mam plik smart.json i znajduje się on w katalogu my/packages w moim projekcie Meteor. Smart.json w moim projekcie wygląda tak:

{ 
    "packages": { 
     "router": {}, 
     "userErrors": { 
      "path": "/home/user/Documents/project/packages/userErrors" 
     } 
    } 
} 

i używam api.add_files i wszystko poprawnie. Kod działa poprawnie, gdy wyjmę go z folderu paczek. Czy jest coś, czego mi brakuje, aby uruchomić ten pakiet? Używam Meteor z poleceniem mrt.

Odpowiedz

27

spróbować umieścić swoje pliki w katalogu „pakiety” swojej aplikacji i wykonanie: meteor dodać [nazwa-pakietu]

+0

Nice! Rozróżnienie pomiędzy 'mrt' i' meteor' jest tym, co ciągle mnie wyrzucało. – Xiv

+0

w rzeczywistości mrt to [meteoryt] (https://github.com/oortcloud/meteorite), oddzielne narzędzie od meteoru do zarządzania wersjami i pakietami. –

+0

To ciekawe, że system pakietów między meteorami i mrt wydaje się być całkowicie niezależny. Wydaje się, że nie ma redundancji? – Xiv

30

Meteor od 0,9 nie posiada „pakiety” katalogu domyślnie, ale będzie nadal używaj go dla pakietów lokalnych. Utwórz go, jeśli nie istnieje.

cd <your-app> 
mkdir packages 

Twój lokalnie opracowany pakiet musi znajdować się w tym folderze. Oczywiście możesz po prostu utworzyć dowiązanie symboliczne. Można to zrobić samemu lub skorzystać z ln -s cechę mrt:

mrt link-package /path/to/<your-package> 

Zwróć uwagę, jeśli podasz ścieżkę względną, to musi być w stosunku do katalogu paczek, a nie w stosunku do bieżącej lokalizacji. Więc możesz najpierw chcieć w katalogu pakietów, aby uniknąć nieporozumień.

koniec dodać pakiet:

meteor add <your-package> 

WAŻNE: <your-package> musi być nazwa opisu wewnątrz package.js. Nazwa folderu/dowiązania symbolicznego nie ma znaczenia dla tej procedury.

Package.describe({ 
    name: "<your-package>" 
}); 

Jeśli pakiet lokalny ma taką samą nazwę jak pakiet zarejestrowany online, zostanie użyta wersja lokalna.

2

Maszynie: OSX 10.10.4, Meteor 1.1.0.3, atakujących 3.2.57 (1) -release

1.Create lokalnej meteor pakiet dir i przykładowy pakiet.

mkdir ~/.meteor_local_packages && cd $_ && meteor create --package user:package-name 

2. Sprawdź wersję zestaw do 0.0.1 przynajmniej

cat ~/.meteor_local_packages/package-name/package.js | grep version: 

3.Point do meteor lokalnych pakietów

echo 'export PACKAGE_DIRS=~/.meteor_local_packages' >> ~/.bash_profile && source ~/.bash_profile 

4.Go do projektu meteorów reż

meteor add user:package-name 

5.Pokaż listę

meteor list | grep user:package-name 
1

Podobnie jak Xiv zasugerował,
Skopiuj pakiet do folderu pakietów (tworzenie „pakiety” Folder wewnątrz głównego katalogu aplikacji).
Czy

meteor add <package name>

(pamiętaj: nazwa pakietu nie jest nazwa folderu jest określona w package.js wewnątrz opakowania)

Powiązane problemy