2015-10-29 178 views
1

我非常有興趣知道當我們在調試模式下啓動CQ時,JVM分叉會發生什麼。我已經瀏覽了Adobe網站,但我不太清楚。 我們是否必須使用-nofork選項?或者它自動執行此操作。以調試模式啓動CQ。分叉會發生什麼

截至目前,我把它理解爲在調試模式下這 -

  1. 開始CQ與使用該參數的命令行: 的java -Xmx8192M -agentlib:JDWP =運輸........ -jar cq-author-4502.jar(不使用nofork)
  2. CQ啓動。
  3. CQ要求一個新的JVM進程即使我給這個命令的內存太多了。
  4. 我使用-nofork,但我開始收到outofmemory錯誤。爲什麼???

我可以得到一個很好的理解解釋嗎?

+1

是的,我們已經使用-nofork – Abie

+0

@Abie,你能解釋一下嗎?我已經更新了我的問題 – theanubhava

+0

是的,當然...讓我有些時間,需要對此做一些家庭工作,可能那時我們可以討論更多。爲延誤道歉... – Abie

回答

0

我們是否必須使用-nofork選項?

不,但如果您在特定端口上調試,它會強制分叉! (確保XMX是BEEG)

如果你運行Java的罐子< < AEM >>罈子--help你得到以下的jar文件:

-debug <<port>> <br/> 
Enable Java Debugging on port number; forces forking 

大量的文章和重疊,但希望這回答並提供思考的食物。

好文章,以及:
http://blogs.adobe.com/dmcmahon/2012/03/09/cq5-5-how-to-start-the-server-in-debug-mode/