在這一系列博客中,咱們將分析有關擴展Eclipse Che
的經歷,而且描述咱們如何在Eclipse Che
中建立基礎的EMF支持。在上一篇文章中,咱們已經描述了咱們的大體的目標和使用樣例。java
在這篇文章中,咱們會描述使用Che的第一步。在這擴展以前,咱們須要運行它來看看它裏面已經有了什麼。而後,咱們找一個最簡單的途徑來獲取一個已存在的模型項目,將其加入Che的workspace裏。這個模型項目尚未被che建立,但已經被Eclipse Modeling Tools IDE建立。經過引入這個項目,咱們能夠看這裏已有哪些特性,咱們須要去擴展什麼。git
做爲一個模板項目,咱們將使用已有的Make it happen
模型。這個樣例是不少Eclipse IDE全部的。能夠經過New->Example->"Make it happen:Example Model"
建立。咱們以後在che裏進行的工做:建立一個沒有已生成代碼的"Make it happen"模型,makeithappen_blank
github
做爲準備,咱們下載並執行了Che。所以,咱們如今使用的是發佈的未拓展的版本。docker
當啓動che並在瀏覽器中打開,你首先看到的會是Dashboard
。你能夠建立Workspaces
,但不是項目。Che爲每一個工做空間啓動一個獨立的runtime
。每一個能夠被定義爲一個單獨的Docker容器和一組相關的容器。默認狀況是,一個工做空間一個容器,源代碼和相關的運行時狀態(JDK和其餘工具包)都被密封在容器中,所以能夠很容易的直接共享。正如你在dashboard裏面看到的,stacks
裏有不少事先定義好的workspace
。其中,stack裏的java樣例就能夠做爲咱們任務的基礎。瀏覽器
在咱們選擇了workspace
以後,Che會爲咱們啓動它。技術上,一個docker容器啓動了,某種意義上很像一個服務器端的虛擬機。在這裏面,咱們能夠進行咱們的開發。服務器
在咱們啓動了workspace
以後,瀏覽器中IDE將會與這個展現的workspace
相鏈接(暫時是空的)。app
讓咱們來爲咱們的嶄新的workspace進入一個已有的模型項目吧!點擊Workspace->Import Project
,默認是引入git項目。咱們引入https://github.com/eclipsesou... 的項目,並點擊import
。eclipse
如今咱們有一個完整的模板項目在咱們的workspace裏,咱們能夠看一下這些文件。由於咱們尚未拓展custom editor
,因此全部的文件都是以純白的文本格式顯示。編輯器
修改純文本格式的XML文件顯然很費勁,這一點咱們會在以後的工做中解決。另外一件有意思的事情是,就這樣這個項目就已經被加入這個workspace裏面了,咱們能夠在下面的命令行對這些文件進行操做,因此咱們經過工具
vi /projects/makeithappen/org.eclipse.emf.ecp.makeithappen.model/model/task.ecore
來修改文件。這就意味着,任何基於命令行的工具均可以直接訪問咱們的項目文件。這是一個頗有意思的機制,咱們將在以後運用到這點。
如今,咱們已經有的是一個簡單的方法去建立一個模板文件來測試。而後咱們開始思考接下來的在che中的EMF支持。很明顯下面就是建立一個custom的模型項目和爲Ecore的custom的編輯器。可是,在接下來的一部分,咱們將首先實現代碼生成,這主要是爲了減小風險。咱們相信,在Che的IDE中建立咱們本身的UI插件是可能的。
可是,爲了代碼生成,咱們想要使用已有的EMF提供的生成器。那麼是否存在一個簡單的方法將Eclipse的特性集成到che裏呢?請期待以後的內容。