2017-04-14 89 views
0

我們希望可以先內部舉辦initializr我們的PCF的實例,這是我能做到的企業。我也已經能夠修改application.yml來默認一些選擇。 initializr-網:0.3.0.RELEASE作爲運行依賴自定義spring-initializr的工作方式?

我簡單地創建它採用io.spring.initializr我自己的春天啓動的應用程序這樣做。

我有2個主要問題:

  1. 有沒有對UI的方式爲默認某些 依賴的選擇時的UI第一齣現(即預選網絡& 安全爲例)?
  2. 我可以自定義生成的輸出?舉例來說,我們有搖籃的 自己的自定義發行版和希望產生 的build.gradle文件看起來比什麼initializr 生成一個有點不同。我們還想生成一個gradle.properties文件作爲 項目的一部分。

回答

-1

我已經爲我們的內部使用做了一堆這樣的事情,並且將在明天的gr8conf會議上介紹這一點。

在自定義文件放置和添加默認的選擇是很容易的,需要一點修改Java,CSS和HTML的知識。你可以從我已經完成的工作中獲得源代碼來演示這個:https://github.com/Grails-Plugin-Consortium/initializr/tree/master

需要更改的代碼很長,所以要完成這項工作我需要做的工作的最簡單方法是鏈接添加「默認」選項和應用配置文件的差異。

https://github.com/Grails-Plugin-Consortium/initializr/commit/feae678fdd4503c2314635cebdaabc04b4d80ace

添加自定義文件被添加到應用程序產生的是一個更容易一點,只需要您將文件添加到initializr發電機的模板,然後添加一個鏈接ProjectGenerator.java複製文件類似於現有代碼已經實現的方式。

protected void generateDockerFile(File dir, Map<String, Object> model){ 
    write(new File(dir, "Dockerfile"), "Dockerfile", model); 
    write(new File(dir, "docker.sh"), "docker.sh", model); 
    write(new File(dir, "docker-run.sh"), "docker-run.sh", model); 
} 

上面添加到ProjectGenerator的方法將增加存儲在initializr/initializr-generator/src/main/resources/templates/

所有在這個文件中繁重的一代生活的以下文件:https://github.com/Grails-Plugin-Consortium/initializr/blob/9b302d31bb069c9c702f36ed765ad3f55debff84/initializr-generator/src/main/java/io/spring/initializr/generator/ProjectGenerator.java

+1

我加入儘可能多的清晰度,因爲我可以爲了這個問題。然而,解決原始海報的問題並沒有「簡單」的方法。我的分叉回購有幾個小時的工作來簡單地完成一些項目,以「提升」initializr。我們已經在工作中進一步完善了這幾個級別,並且花費了數週的時間來調整Initializr來做一堆整潔的事情。你只需捲起袖子,並深入代碼。 – Christian