2015-10-22 54 views
1

我有一個名爲packagetester的應用程序,它包含/ packages目錄以及名爲lauffenp:notifications的本地包,位於/ packages目錄中。流星應用程序未在第二個終端中看到本地包

以下是來自packagetester的軟件包文件。

meteor-base    # Packages every Meteor app needs to have 
mobile-experience  # Packages for a great mobile UX 
mongo     # The database Meteor supports right now 
blaze-html-templates # Compile .html files into Meteor Blaze views 
session     # Client-side reactive dictionary for your app 
jquery     # Helpful client-side library 
tracker     # Meteor's client-side reactive programming library 

standard-minifiers  # JS/CSS minifiers run for production mode 
es5-shim    # ECMAScript 5 compatibility for older browsers. 
ecmascript    # Enable ECMAScript2015+ syntax in app code 

autopublish    # Publish all data to the clients (for prototyping) 
insecure    # Allow all DB writes from clients (for prototyping) 

lauffenp:notifications 

現在,如果我在使用meteor單一終端運行它,它工作得很好,它找到的包像它應該和執行它。

不過,如果我打開第二個終端,並嘗試做同樣的事情,它無法找到該軟件包:

=> Started MongoDB.       
=> Errors prevented startup:     

    While selecting package versions: 
    error: unknown package in top-level dependencies: lauffenp:notifications 

這裏是左終端上運行和失敗的應用程序的屏幕截圖在右側終端上。 screen capture of app running/not running in two terminal instances

如果我退出左側終端,它不會運行,並給我同樣的錯誤。我必須meteor removemeteor add以某種方式'重置'包,然後我可以在一個終端上運行它。

我怎樣才能讓流星'堅持'本地包?

+0

你需要添加/刪除 – pahan

+0

不......不運行應用程序添加的所有包包之前,停止你的應用程序的運行上。問題是唯一能找到包的明確的終端實例就是我明確添加的包。 – phillercode

回答

1

您在第二個終端上出現的錯誤似乎與丟失的軟件包有關,但事實上這是由於您試圖在同一目錄中運行同一應用程序的多個實例。

你不能那樣做。

雖然有一個實例試圖將該應用程序構建到.meteor/local目錄中,但是其他種族進行清理和重建以及其中一個實例失去了依賴關係的追蹤,因此會產生誤導性的錯誤消息。

但是,如果您檢查另一個終端上的以前的警告,您會看到實際問題是多個實例。

也就是說,

  • 如果有什麼關於3000別的傾聽,你必須另一個端口
  • ,如果你想運行同一應用程序的兩個實例,你必須創建的另一個副本上運行流星您應用程序文件夾,運行從複製的文件夾的第二個實例並將其設置爲監聽其他端口
相關問題