2012-04-24 88 views
2

我通過啓動命令/etc/init.d/jetty啓動Jetty時遇到問題。當我執行產生下面的輸出命令:通過啓動腳本啓動Jetty不起作用

/etc/init.d/jetty start 

Starting Jetty servlet engine.: 
Jetty Rotate logs 
Jetty servlet engine started, reachable on http://jagadguru:80/.: jetty. 

當我在碼頭目錄鍵入java -jar start.jar它成功啓動。

任何人都可以幫助我嗎?

+0

你得到一個錯誤? /etc/init.d/letty中的拼寫錯誤不是我假設的問題嗎? – verhage 2012-04-24 10:29:12

+0

噢,它是碼頭,對不起,這不是我的問題。 – 2012-04-24 10:36:08

+0

那麼,你的錯誤是什麼?/etc/init.d/jetty的內容是什麼? – verhage 2012-04-24 10:46:14

回答

0

這可能是由於某些工作或日誌文件夾的權限錯誤所致。我假定啓動腳本嘗試更改用戶,因此沒有與通過「java -jar」運行Jetty時使用的權限相同的權限。

另一種可能性是您沒有JAVA_HOME集並且啓動腳本沒有找到您的java bin。

請附上某種日誌文件,因爲如果沒有更詳細的信息,很難說更多。

+0

我的問題是記錄什麼,考慮到如果碼頭無法啓動,那麼將沒有記錄日誌。 – fabspro 2012-09-13 17:05:08

+0

我有同樣的問題。如果未設置$ JAVA_HOME,則腳本不會啓動並明確說明未設置$ JAVA_HOME。至於權限問題,我用'sudo'運行它並不能解決問題 – dm76 2012-11-25 10:41:35

+1

@fabspro,日誌會在/ var/log/jetty中 – dm76 2012-11-25 10:44:49

1

這可能是文件權限問題。即使您使用sudo運行啓動腳本,該腳本也會定義一個jetty用戶(默認爲jetty)。我遇到類似這樣的問題:我在/ tmp上的權限阻止碼頭在那裏創建文件。我調整了/ tmp上的權限,一切都很好!當然,碼頭用戶還需要碼頭文件夾的權限。

另外,檢查是否Jetty是正確找到的Java運行sudo的服務碼頭檢查

0

作爲回答here,在/etc/default/jetty對碼頭的默認配置只允許從localhost連接,你需要設置JETTY_HOST0.0.0.0允許Jetty接受來自任何主機的連接。

添加以下行/etc/default/jetty

JETTY_HOST 0.0.0.0