假設我正在開發一個Ruby gem,它將通過添加到其gemfile文件中來安裝在項目中。從我的寶石中,我想知道項目的根目錄路徑。我怎麼弄到的?從Ruby Gem中,我如何獲取項目的目錄路徑?
0
A
回答
1
如果您使用的是Rails,請使用Rails.root
。
如果你不知道'主要項目'是Rails ......那麼它並不是一個好方法。
全球$0
是ruby腳本被調用的命令名稱。但是這不會包含一條路徑。你可以試試File.expand_path $0
,但是有很多原因會導致這個不能給你你想要的,包括程序可能改變了它的「工作目錄」。 Dir.pwd
會給你「當前工作目錄」,只有當項目從「項目目錄」被調用並且代碼沒有改變當前工作目錄時,它纔可能是「項目」的目錄。
通常情況下,ruby中實際上沒有「項目」或「項目目錄」的內置概念 - 您可以擁有一個根本不屬於項目組成部分的ruby腳本,它只是一個文件生活在你想要的文件系統中的任何地方。
我不認爲有一個通用的可靠方法來做到這一點,它取決於「項目」是如何建立的,當然這是寶石不能確定的。
但是,如果您使用的是Rails,Rails.root
,因爲Rails具有如何設置和調用的約定,並在其啓動過程中實現了功能Rails.root
以記錄Rails的項目目錄。
相關問題
- 1. 如何從測試項目中獲取項目的路徑?
- 2. 如何在spring中獲取項目目錄的路徑?
- 3. 獲取路徑到項目目錄旁邊的目錄 - JAVA
- 4. 如何獲取項目目錄的路徑
- 5. 如何獲取我的WinForm應用程序項目中的目錄路徑
- 6. 如何獲取Django中臨時目錄的子目錄路徑
- 7. C - 獲取目錄路徑
- 8. 從Spring bean獲取目錄的路徑?
- 9. 獲取文件的路徑從項目
- 10. OCaml:如何獲取當前模塊的路徑* /我的項目目錄?
- 11. 如何獲取工作目錄路徑?
- 12. c#獲取項目中目錄的路徑
- 13. 從SDCARD ANDROID 6.0.1獲取目錄路徑
- 14. 如何顯示路徑超出我的Ruby on Rails項目目錄的圖像
- 15. 如何從Groovy中的完整路徑獲取當前目錄?
- 16. 如何從項目中獲取存儲項目的文件路徑?
- 17. 獲取路徑中的一級目錄
- 18. Ruby on Rails目錄路徑
- 19. 如何從批處理腳本中的文件路徑獲取目錄路徑
- 20. 在C中獲取項目的路徑#
- 21. 獲取列表中項目的路徑
- 22. 如何在Perfect 2.0中獲取項目文件夾的根目錄路徑?
- 23. 如何從輸入中獲取文件夾/目錄路徑?
- 24. 如何從android目錄中獲取絕對路徑URI
- 25. 如何獲取我的路徑的每個目錄名稱?
- 26. 如何從eclipse中使用java獲取當前項目路徑
- 27. 獲取目錄文件的路徑
- 28. 獲取Silverlight ClientBin目錄的路徑
- 29. Javascript:獲取目錄的完整路徑
- 30. 如何從PHP的完整路徑獲取目錄名稱?
也http://stackoverflow.com/questions/10132949。 – sawa
我認爲這個問題可能是重複的,但它似乎要求使用gem項目的目錄而不是gem目錄本身的路徑。 – matt
@matt如果是這樣,那麼這與寶石無關。 – sawa