2014-10-31 53 views
0

我總體上講遵循指令here,並在那裏的服務腳本中嘗試使用su - <myuser> -c "the command"。然而,我試圖通過Leiningen運行一個Clojure應用程序,並且這個過程似乎都不能找到lein。我可以使用類似su - <myuser> -c "/path/to/lein run ..."的東西,但是後來發現一個錯誤,找不到java如何獲得命令作爲非root用戶在BeagleBone Black上啓動運行?

如何獲取此命令以便它可以訪問我的環境?

回答

0

結果很簡單。我做

su - <myuser> -c "source ~/.bashrc; cd ~/chicken-coop; ~/bin/lein run"` 

關鍵是source ~/.bashrc;,它增加了正常的事情到您的路徑,所以雷音知道哪裏java是。

+0

如果您發現啓動時間或內存使用情況有問題,您可能需要考慮在更新代碼時運行'lein uberjar',並運行'java -jar [your-project.jar]'。否則,可以使用'lein trampoline run'來略微減少資源使用。 – noisesmith 2014-10-31 04:28:24

+0

感謝您的提示。我實際上一直在使用'蹦牀',但由於它對解決方案沒有任何影響,所以沒有答案。如果啓動時間成爲問題,我會考慮做'ubarjar'(目前還不是我正在開發的內容)。 – metasoarous 2014-10-31 05:58:03

相關問題