![](/img/trans.png)
[英]How to set up Angular JS Maven project for UI and Spring Rest Maven project on server side?
[英]build configuration : Java backend (Spring + Maven) with JS project (Angular)
我們希望改善Java + JavaScript項目的構建配置/集成。
工作區配置非常簡單-每個項目都在單獨的目錄中:
/workspace
/JavaBackend
/JsFrontend
問題是,開發人員在從前端運行AJAX查詢時(來自file://..../JSApp/build/index),正在處理瀏覽器中的“ Access-Control-Allow-Origin不允許使用null原點”消息。 .hml)和Java App服務器位於localhost:8080上。我們可以關閉瀏覽器安全性或修改標頭以允許跨源請求,但我們認為這不是實現此目的的好方法。
我們不希望在/ src / main / webapps /中的Java項目中包含JS資源,因為在生產環境中,應用程序將部署在不同的機器上,並且每個應用程序都有自己的構建服務器。
您有類似項目配置的經驗嗎? 您會向我們推薦什么?
同時,我們將嘗試使用Tomcat 7來檢查它是否可以例如在Java應用程序的上下文之外提供外部靜態資源(js內容)
出於開發目的,我將讓Tomcat通過<Context>
標記在server.xml中包含前端文件夾。 該文件夾可以是任意文件夾,甚至可以位於另一個存儲庫中(例如/GitRepos/ApplicationGui/app
)。
...
<Host appBase="webapps" autoDeploy="true" name="localhost" unpackWARs="true">
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs" pattern="%h %l %u %t "%r" %s %b" prefix="localhost_access_log." suffix=".txt"/>
<Context docBase="/workspace/JsFrontend" path="/"/>
<Context docBase="FlexibleOrders" path="/FlexibleOrders" reloadable="true" source="org.eclipse.jst.j2ee.server:FlexibleOrders"/>
</Host>
</Engine>
</Service>
</Server>
在生產中,我建議從前端制作Maven人工制品。 然后可以通過依賴項將其包含在后端中,如下所示:
<dependency>
<groupId>org.enterprise</groupId>
<artifactId>application-gui</artifactId>
<version>1.0.0-SNAPSHOT</version>
</dependency>
有關生產的完整配置,請參見此博客:
http://wiki.switajski.de/2016/01/24/how-to-create-maven-artifact-with-static-web-resources.html
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.