2011-03-23 66 views
2

Eclipse的開發GAE應用越來越逆時針我的Eclipse設置 和GAE開發服務器在交互模式下運行的工作後的問題,我發現這些 東西還是不清楚我:關於使用Clojure

1)我怎樣才能啓動服務器和應用程序沒有指揮 REPL?

2)當我將應用程序部署到Google服務器時,我如何以及在哪裏定義應用程序的入口點?我的意思是,谷歌將如何知道 哪些應用程序,應用程序處理程序和路由使用?

3)我可以在同一個項目上使用java類和clojure文件 ,這樣在我的src文件夾上創建並編輯 時,它們都會自動編譯?

4)實際上需要上傳到GAE的文件和罐子在 最後?我曾經部署PHP應用程序GAE,但在這裏我不知道我是否應該做罐子,包括編譯的CLJ文件。我也可能喜歡組織不同於逆時針或appengine-magic的文件,所以我在哪裏指定資源和類的路徑?

5)最後是否有可能連接谷歌生產服務器與 Emacs - 煤泥 - 斯旺克組合?這將是夢想,洛爾履行 。

我正在用Jetty,Compojure,Ring和Hiccup使用appengine-magic。

+3

你可能會考慮將你的問題分成單獨的問題,以便人們更容易回答。 – 2011-03-23 07:47:57

+0

謝謝,我可能但最初我認爲它更容易維護我的話題,並且可以看到我的設置和問題的背景。讓我們看看,這是怎麼回事...... – MarkokraM 2011-03-23 07:59:20

回答

1

我打算建議lein/appengine-magic/Eclipse混合方法。用appengine-magic創建你的GAE項目,然後在Eclipse中設置它。

  1. 創建一個Clojure「運行配置」並檢查需要評估的源文件以啓動服務器。開始時你會得到一個REPL。
  2. 您的GAE入口點是您的web.xml服務器級別,它指app_servlet.clj(假設您最初使用lein appengine-new創建項目)中的提前編譯源。請致電app_servlet.clj撥打電話make-servlet-service-method - 您的App Engine Magic的參數(請參閱core.clj中的def-appengine-app)入口點。反過來,這是指您的Compojure處理程序和路由。有關詳細信息,請參閱https://github.com/gcv/appengine-magic
  3. 我還沒有做到這一點,所以不能評論。
  4. 讓appengine-magic照顧這個:lein appengine-magic prepare,然後部署部署戰爭目錄appcfg.sh(您可以在GAE Java SDK中找到它)。您也可以使用GAE Eclipse插件來實現此目的。
  5. 您不能在GAE中使用套接字。 Swank取決於套接字,因此不可能將REPL應用於您的實時應用程序。但是,您可以使用開發人員服務器來複制所有您想要的內容
+0

我從來沒有得到appengine-magic獨立工作,也沒有Eclipse。使用普通組合和環工作但是...所以我最終也測試Netbeans,其中集成REPL有路徑問題。然後Emacs由於接口和IntelliJ而有點難以進入,目前爲止它一直工作得很好。跟進其他帖子上的問題。謝謝你的回答Lispnik。 – MarkokraM 2011-04-04 07:09:51

0

Q 1 & 2最終解決並清除。

Q 3我無法做到這一點,因爲java或clojure類互相重疊,我無法單獨爲它們更改目標目錄。

問4在第一次成功部署之後,現在我知道將包含哪些核心基礎瓶。是的,這取決於你在你的項目中使用什麼。我想我已經在PHP部署上轉移了太多不必要的文件。

問題5這就是我的想法。但我並沒有在開發應用程序引擎服務器上工作。它的報告非法訪問一些appengine sdk文件。也許我需要把它包括在項目庫...