2013-04-02 17 views
14

Aynı sunucuda (farklı bağlantı noktalarında) iki farklı Meteor uygulamasını çalıştırmak istiyorum ancak Meteor'ın çekirdek paketlerinden birinde bir şeyi değiştirmek istiyorum ve tek bir uygulamanın orijinal paketi ve diğer uygulamayı değiştirilmiş birini kullanmasını istiyorum. . Bunu nasıl yapabilirim?Bir Meteor paketi nasıl değiştirilir/düzenlenir?

cevap

1

Sen github repo de paketin dosyaları elde edebilirsiniz: https://github.com/meteor/meteor/tree/master/packages

package.js dosyalar dışında istediğiniz dosyaları Getir ve projenize ekleyin. Not: Bazen yükleme sırasını emin olmanız gerekir, bu nedenle dosya adlarını değiştirmek zorunda kalabilirsiniz, yükleme sırasına bir göz atmak için package.js. Varsayılan olarak meteor emirleri adlarına göre dosyalanır ancak paketler bunu mutlaka kullanmaz. https://atmosphere.meteor.com/wtf/package: Bir smart.json yapmak için nasıl https://github.com/oortcloud/meteorite

Tam talimatları:

Sen sadece paket mod ve meteorite kullanarak geri eklerseniz dosyaları yeniden adlandırma önleyebilirsiniz. Güzel bir şey varsa lütfen atmosphere'a eklemeyi düşünün!

+0

'Hesap-tabanı 'paketini değiştirmek istiyorum, sadece bir dosya daha kesin:' accounts_common.js'. 38. satırda 'users' koleksiyon adı var ve' myusers'lara değiştirip değiştirilen dosyayı '~/myapp/packages/accounts-base/accounts_common.js konumuna getirdikten sonra Firebug’da aşağıdaki hatayı alıyorum:' Zaten 'myusers' adlı bir koleksiyon var. Sanırım değiştirilmiş olanla birlikte çalışan orijinal dosya ile çakışması yüzünden mi? –

+0

normal 'hesaplar-tabanını kaldırdınız mı? Eğer çatışırsa, '' Yeni Koleksiyon '' (“myusers”) '' yı bir yerde – Akshat

+0

no'su var. Yaptığımı söylediğim gibi değiştirilmiş dosyayı boş bir dizine ('~/myapp/packages/accounts-base') yerleştirdim. –

20

A here gelen yanıta göre daha basit bir cevap, bit: o klasörü ('cd Projeniz' & & 'mkdir paketlerin & & 'cd paketleri için proje ve değişim konumda paketler klasör oluşturun

  1. git clone https://github.com/YOUR_PACKAGE_ADDRESS ')
  2. git den dosyaları (al' '- içine getirilen paket klasörü içinde git installed)
  3. sahip package.js bulmak ve düzenlemek için ihtiyaç' Package.des cribe 'isim değeri, örneğin' -manually-modified 'ekleyerek' -manually-modified '
  4. Getirilen paket klasöründe değiştirmeniz gereken dosyaları düzenleyin.
  5. Add paket .meteor adlı gizli klasör olarak kendi kökünde benim kullanıcı klasöründe benim paketleri var
+0

Paketlerin paketindeki yolunu da düzenlemek zorunda mıyım? – Gobliins

+0

Adım 3 ile ilgili bir uyarı (paketi yeniden adlandırmak). Yüklenen paketler değiştirilmekte olan pakete bağlıysa, yeniden adlandırma 2 ayrı paketin kullanılmasına neden olacaktır: orijinali ve değiştirilmiş olanı. Muhtemelen istediğin bu değil, bu yüzden bu durumlarda yeniden adlandırılmamalı. Bu örnekte [bu soru] bölümüne bakın (http://stackoverflow.com/q/42178852/268093). – MasterAM

+0

Paketleri .meteor/paketlerinden değiştiremediğim bir sorunla karşılaştım, ancak bu adımlarla çalıştı. –

0

(meteor paket_ismi-el-modifiye ekleyin) proje.

Belki orada kontrol edebilirsiniz? Bir mac üzerinde olurdu altında:

~/.meteor/paketler/paket adı

Ayrıca artık orada bir dosyaya os.json gidin ve için "uzunluğunu" değişkeni değiştirmeli Yeni bayt dosya boyutuna uyacak şekilde değiştirdiğiniz dosya. Aksi halde derlenemez, ancak önce derlemeyi deneyin ve bir paket kodunu değiştirdiğiniz bir sorun olup olmadığını görün.

İlgili konular