這可能不是問題,但我注意到,在命令提示符下(在Windows 10中)發出命令express時,實際運行的是\ node_modules \ express-generator \ bin \ express,而不是\ node_modules \ express \ lib \ express.js代碼。我知道節點實際上並不需要.js擴展名,但我習慣於捆綁的Linux批處理文件(在我的系統上也沒有擴展名)和擴展名爲.cmd的Windows批處理文件之間的區別,以及這讓我想知道我下載的快遞版本的有效性。在他們使用express_generator的新方法中,他們只是爲Windows和Linux提供一個JavaScript文件?我得到了正確的嗎? 。 。 。 順便說一下,有問題的快速文件確實在頂部有一個shebang行,特別是#!/ usr/bin/env節點。這當然意味着該文件已經爲Linux定製。當然,shebang行會在窗口上被忽略,但它確實會讓人停頓一下。 。 。 。 感謝您的任何援助在Windows上運行express(express_generator)運行一個名爲express express的文件,NOT express.js
回答
TL; DR:一切看起來都正常。
express\lib\express.js
是Express模塊的一部分,它是開發人員用來開發Express應用程序的實際代碼。該文件不能直接從命令行使用。
express-generator\bin\express
是express-generator
提供的用於創建Express項目目錄的命令行工具。這意味着要從命令行運行。
在Linux/Unix上,命令行工具通常沒有擴展名(你已經提到的東西)。這些工具可以使用任意數量的不同編程語言實現,包括Javascript。 Linux知道使用哪個解釋器來使用shebang行來運行該工具。我不知道如何處理這些擴展命令行工具,但只要express
(CLI工具)的作品,我不會擔心太多。
我並不是很擔心。我只是想知道所有這些子文件夾結構。我覺得有時候會覺得很有趣 - 特別是在模塊子文件夾中 - 他們會添加.js擴展名,但有時候他們不會。他們可能確信在這些情況下它可以在兩個平臺上運行。非常感謝回覆。 – Tallisfan
@Tallisfan一般的經驗法則是,打算作爲命令行腳本運行的文件沒有擴展名,以及打算以編程方式使用的文件。 – robertklep
也許這就是策略,但在Windows中通常使用.cmd擴展名的地方肯定沒有遵循。 – Tallisfan
- 1. 在Linux上運行MS SQL Server Express Mint
- 2. 在Application Express上運行Sql * Plus命令
- 3. 在SQL Server 2008 Express上運行Reporting Services
- 4. 使用Express運行io.js
- 5. 服務與express express文件
- 6. Silverlight應用程序在Express editoin上運行或不運行
- 7. 從命令行運行IIS express
- 8. 運行Visual Web Developer 2008 Express的錯誤
- 9. 'express'不可執行
- 10. ubuntu pm2命令運行node-express站點
- 11. 如何運行SQL Server Express 2008實例
- 12. Node.js Express - 公開運行項目
- 13. 全局npm依賴express不會運行
- 14. 在APP_DATA的SQL Server Express數據庫上運行aspnet_regsql
- 15. 訪問在虛擬機上運行的IIS Express
- 16. Node.js和Windows上的Express
- 17. Windows Search Server Express
- 18. 我可以並行運行多少個NodeJS Express服務器?
- 19. 保持IIS Express在dotnet cli web項目上運行.NetCoreApp
- 20. 無法在hostmonster上運行express服務器
- 21. IIS媒體服務可以在IIS Express上運行嗎?
- 22. 錯誤:在Azure上運行時找不到模塊'express'
- 23. Express(Nodejs包)在Ubuntu x64上無法運行14.04
- 24. 文件上傳node.js express
- 25. Dev Express GridView行數
- 26. 如何在Visual C++ Express的.lib項目中運行單個.c文件?
- 27. 無法運行node.js服務器在節點上傳文件使用express和multer
- 28. 如何在命令行中運行express js(node js) - linux
- 29. 通過Visual Studio在同一端口上運行多個IIS Express實例
- 30. 如何在Express服務器啓動時運行某個功能?
確實我有這個問題,試圖解決它,但這不工作這個我的操作系統。 –