摘要:背景以為啟動的框架,以為前端頁面的框架,最后需要將的代碼運行在內(nèi)置中。最終生成的包中也會包含這些內(nèi)容。本地啟動項目測試如果繼續(xù)使用的啟動方式函數(shù)運行,由于中并沒有的代碼,則不會正確看到頁面。解決辦法就是使用另一個插件,專門用于的命令。
背景
以springboot為tomcat啟動的框架,以angular2為前端頁面的框架,最后需要將angular2的代碼運行在springboot內(nèi)置tomcat中。
項目結(jié)構(gòu)</>復(fù)制代碼
src/main/
--------angular
--------java
--------resources
pom.xml
angular目錄是用的angular cli創(chuàng)建的新項目,java中是springboot的啟動代碼,resources目錄下只有application.yml配置文件
集成思路由于springboot的工程中要加入靜態(tài)html文件等需要放在resources下面的static目錄下,然后直接通過localhost:8080/index.html即可訪問static目錄下的index.html文件。所以我們需要將angular的編譯代碼放在該static目錄中。
于是,集成的步驟:
編譯angular的項目,使用npm run release命令即可,編譯后的代碼在angular/dist目錄中
復(fù)制angular/dist目錄中的所有文件到resources/dist目錄下(是springboot編譯后的jar包目錄),或者將angular/dist目錄作為resource資源
我們可以通過maven的一些插件來完成,這里將用到exec-maven-plugin插件(用于執(zhí)行命令)。
pom.xml中的build在項目的pom.xml文件中,我們需要添加build配置:
將/src/main/angular/dist目錄作為resource目錄
build的時候執(zhí)行npm run release命令
</>復(fù)制代碼
src/main/resources
${project.basedir}/src/main/angular/dist
static
org.codehaus.mojo
exec-maven-plugin
1.6.0
generate-sources
exec
npm
src/main/angular
run
release
然后執(zhí)行mvn clean package后,在target/classes目錄下的就會看到static目錄以及angular/dist目錄中的所有文件。最終生成的jar包中也會包含這些內(nèi)容。
本地啟動項目測試如果繼續(xù)使用sptringboot的啟動方式Application.main函數(shù)運行,由于resources中并沒有angular/dist的代碼,則不會正確看到頁面。解決辦法就是使用另一個maven插件:spring-boot-maven-plugin,專門用于springboot的maven命令。
在pom.xml中的build>plugins中加入以下代碼即可:
</>復(fù)制代碼
org.springframework.boot
spring-boot-maven-plugin
1.5.9.RELEASE
repackage
然后執(zhí)行maven的run命令: mvn clean spring-boot:run即可啟動該項目,并且會加載angular的編譯文件。
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://specialneedsforspecialkids.com/yun/68606.html
摘要:目標(biāo)展現(xiàn)層與邏輯層分離數(shù)據(jù)與可視化組件相分離數(shù)據(jù)與視圖雙向綁定實時更新代碼結(jié)構(gòu)清晰易于維護與修改基本原理的組件生命周期鉤子方法父子組件交互機制模板語法源碼解析代碼結(jié)構(gòu)很簡單,其中除主頁和之外的代碼結(jié)構(gòu)如下所示實現(xiàn)宿主視圖定義,個按鈕,按鈕 目標(biāo) 展現(xiàn)層與邏輯層分離 數(shù)據(jù)與可視化組件相分離 數(shù)據(jù)與視圖雙向綁定,實時更新 代碼結(jié)構(gòu)清晰,易于維護與修改 基本原理 angular2 的組件...
摘要:當(dāng)開始使用來提供真正的跨平臺應(yīng)用時,他發(fā)現(xiàn)對的緊耦合的依賴性在用開發(fā)應(yīng)用創(chuàng)建映射時呈現(xiàn)的問題。的重點放在高性能的渲染和執(zhí)行上,你可以很輕松的創(chuàng)建高性能的跨平臺應(yīng)用,這些應(yīng)用可以在相同的代碼庫上運行并且隨意使用特點平臺的組件。 showImg(https://segmentfault.com/img/bVJi8d?w=980&h=400); 在開發(fā)階段,跨平臺開發(fā)App面臨一個很重要的決...
摘要:數(shù)百萬前端開發(fā)人員翹首期待的,日前宣布版本正式發(fā)布,全面支持是一款純前端表格控件,也是目前市面上唯一的最接近的純前端控件。葡萄城公司成立于年,是全球領(lǐng)先的集開發(fā)工具商業(yè)智能解決方案管理系統(tǒng)設(shè)計工具于一身的軟件和服務(wù)提供商。 數(shù)百萬前端開發(fā)人員翹首期待的SpreadJS,日前宣布V10.2版本正式發(fā)布,全面支持Angular2! SpreadJS 是一款純前端表格控件,也是目前市面上唯一...
前言 SpringBoot是一個全家桶,可以方便的集成各種開發(fā)工具。日志框架是一個在線應(yīng)用必需的,本文介紹了當(dāng)前主流日志框架Logback與SpringBoot的集成方法 準(zhǔn)備工作 完成SpringBoot 1024行代碼 - Getting Started(一個簡單的web應(yīng)用) 具體步驟 1. 添加Logback的配置文件logback-springboot.xml 其中文件名需要為logba...
閱讀 2460·2021-11-22 09:34
閱讀 3068·2021-10-25 09:43
閱讀 1985·2021-10-11 10:59
閱讀 3387·2021-09-22 15:13
閱讀 2332·2021-09-04 16:40
閱讀 425·2019-08-30 15:53
閱讀 3192·2019-08-30 11:13
閱讀 2608·2019-08-29 17:30
极致性价比!云服务器续费无忧!
Tesla A100/A800、Tesla V100S等多种GPU云主机特惠2折起,不限台数,续费同价。
NVIDIA RTX 40系,高性价比推理显卡,满足AI应用场景需要。
乌兰察布+上海青浦,满足东推西训AI场景需要