2017-02-24 112 views
4

自2.0版以來,我沒有使用jhipster,而且我目前正在使用版本#4.0.6進行追趕。 當我嘗試從命令行通過「./mvnw」(默認dev maven profile)構建最初的應用程序時,應用程序javascript文件不會添加到index.html中(這樣頁面在我的瀏覽器,當我嘗試http://localhost:8080)。 是否有人可以解釋我通常導致maven(運行dev配置文件)的正常事件鏈,以將應用程序JavaScript文件包含到index.html中? 非常感謝您的幫助。 問候 kbjpmaven(在dev配置文件下運行)如何在index.html中包含JavaScript文件?

+0

如果角度爲2,則還必須使用'yarn start'運行webpack,請參閱https://jhipster.github.io/development/#working-with-angular。使用prod配置文件時,maven使用maven運行 –

回答

8

我們的工作流程如下,紗線或NPM將根據選擇

  1. 當您生成文件生成一個應用程序,並在年底會觸發yarn install任務
  2. 使用在package.jsonpostInstall腳本觸發yarn install後,此步驟調用webpack:build任務
  3. 現在你應該已經生成的所有文件,並編譯成內012 www文件夾基於構建工具或build文件夾選擇
  4. 現在運行mvnwgradlew將推出後端,並應在本地主機可用:8080,這也應該成爲從上面所彙編的前端步驟
  5. 現在,如果你開始進行更改什麼都不會反映其未編譯,所以你需要或者更改後手動運行webpack:build:dev或有yarn start活重載運行

要麼你沒有讓後腳本運行或刪除的目標文件夾

您還可以強制Maven來運行的WebPack任務的,經過webpack輪廓像mvnw -Pdev,webpack

+0

很好的答案Deepu,可以在doc –

+0

嗨Deepu ...你釘了它!在最初的項目生成後,我做了一個「mvn clean install」。 這就是說,爲什麼開發者配置文件的前端-maven-plugin(「webpack build dev」)部分不是? 我不確定其他開發者,但通常當我建立我的項目時,我做了一個「mvn clean install」(它清除了目標文件夾)而不是「mvn install」。 – user2038596

+0

@GaëlMarziou我將它添加到文檔 – Deepu

1

我只是碰到了這個問題,雖然我使用gradle這個開始時間。 Deepu's answer也爲我解決了一切。要強制gradle這個運行webpackBuildDev任務(它建立在缺少www目錄)乾淨後,我已經添加了這一點:

processResources { 
    doLast { 
    if (!new File("$buildDir/www").exists()) webpackBuildDev.exec() 
    } 
} 

這大概達到同樣的事情,前端 - Maven的插件。

+0

你在哪裏寫這個代碼?你能解釋更多嗎? – Mayurb

+0

這是在頂級build.gradle。當且僅當'www'目錄不存在時,它才更新'processResources'任務(在編譯/打包之前發生)來運行'webpackBuildDev'任務。 Essentialy,「如果webpack從未被構建過,那麼就構建一次」。 –

0

單一命令來構建web資源(圖片,HTML,打字稿等)

yarn webpack:build

該命令將會把網絡資產,在那裏他們需要,即build/www

相關問題