2016-02-17 30 views
2

我剛剛從Angular 1移動到了2,現在我將創建一個spring2 mvc maven webapp,並在其前端使用angular2。在Spring webapp中使用angular2 WITHOUT node.js

但在互聯網上的任何地方,我都看到有人使用node.js來獲取必要的庫&插件。有沒有一種方法可以爲此使用Maven依賴關係?

應用結構:

_ main 
    _ java 
    _ resources 
    _ webapp 
     _ components 
      _ app.component.ts 
     _ img 
     _ WEB-INF 
     _ index.html 
     _ main.ts 

main.ts

//getting an error on the bootstrap import 
//because the angular2 folders aren't there because there is no node 
import {bootstrap} from 'angular2/platform/browser' 

import {AppComponent} from './components/app.component.ts' 

bootstrap(AppComponent); 
+0

http://stackoverflow.com/a/17104456/755183 – hahn

+0

如果你想用Maven管理前端依賴項,你應該檢查[WebJars](http://www.webjars.org/)項目。還有如何從Maven調用基於節點的工具(如NPM,Bower或[JSPM](http://jspm.io/)) - 檢查[maven-frontend-plugin](https://github.com)/eirslett/frontend-maven-plugin)(這是我更喜歡的)。 –

回答

3

我本人來說使用Angular2Java後端,整體封裝在一個的.war文件。

後端庫使用Maven進行管理,前端使用NPM進行管理。我的項目結構是這樣的:

_ backend 
    _ src 
    _ main 
     _ java 
     _resources 
_ frontend 
    <angular-cli project> 
    _ package.json ... 

注意NPM管理我所有的前依賴,現在,我不捆綁任何東西,因爲在調試應用程序運行現在。

我有一個部署腳本,它將我的前端的捆綁版本複製到後端的resources/static(或webapp)文件夾中。

如果你想一些幫助管理你的web應用程序文件夾Angular2,你可以嘗試AngularCLI。該項目還處於初級階段,但您可以使用它做一些有趣的事情,它可以幫助您創建樣板,它會爲您下載所有的依賴關係。

+0

thx,會使用npm然後,認爲會有另一種方式:)但它很好 – Zoef

+0

也許有另一種方式,但我不認識他。如果你的項目非常簡單,AngularCLI是一個非常好的工具。目前,當你有一個複雜的項目時仍然存在一些錯誤。 –

+0

@AdrienBARRAL嗨Adrien,我處於類似的情況(春天,Angular2到.war),我想知道是否有辦法自動檢測更改並在瀏覽器中重新加載它們?你有任何一個樣本項目嗎?謝謝 – Androidicus