我想要將我的Angular 2前端構建和部署到Tomcat應用程序服務器。爲了開始,我已經完全遵循以下介紹的步驟:https://angular.io/docs/ts/latest/guide/webpack.html。將Webpack部署到Tomcat的Angular 2應用程序 - 404錯誤
所以我有以下項目結構(所有文件都完全一樣在引進上述mentionend):
angular2-的WebPack
---配置
------- helpers.js
------- karma.conf.js
------- karma-test-shim.js
------- webpack.common.js
----- --webpack.dev.js
------- webpack.prod.js
------- webpack.test.js
--- DIST
--- node_modules
---公共
------- CSS
-------- ------ styles.css
-------圖片
-------------- angular.png
--- src
---- --- app
-------------- app.component.css
-------------- app.component.html
- ------------ app.component.spec.ts
-------------- app.component.ts
-------------- app.module.ts
------ -index.html
------- main.ts
------- polyfills.ts
------- vendor.ts
---分型
- -karma.conf.js
---的package.json
--- tsconfig.json
--- typings.json
--- webpack.config.js
NPM在控制檯上或Webstorm分別webpack-dev-server --inline --progress --port 3000
開始 →按預期工作
當我運行NPM構建分別爲rimraf dist && webpack --config config/webpack.prod.js --progress --profile --bail
它建立沒有錯誤,輸出包文件,應用程式物理放置在dist文件夾如預期。
DIST
---資產
------- angular.png
--- app.css
---app.css.map
--- app.js
---app.js.map
--- index.html的
--- polyfills.js
---polyfills.js.map
--- vendor.js
---供應商。 JS。地圖
接下來,我將dist文件夾的內容複製到Tomcat 9.0的webapps目錄中。當我嘗試訪問已安裝的應用程序時,出現.css和.js文件(which can be seen in the attached picture)的404錯誤。 它試圖從錯誤的URL中獲取文件→「/ obv /」丟失。
我真的被困在這裏,我有這種感覺,我已經嘗試了一切,我可以在互聯網上找到關於這個話題的一切。
有人能告訴我我做錯了什麼嗎?先謝謝你。
謝謝你幫助我這麼快(我失明瞭)。我在app.component.html中有這個 標記。 Webpack將src屬性更改爲以下內容: 。 由於主導斜槓它找不到它。有沒有Webpack添加這個斜線的配置或者什麼,或者你如何處理這個問題? – Smoose28
由於webpack.config.js(或任何其他webpack配置文件)中的「output.publicPath ='/'」,所以添加了前導斜槓。當這被刪除時,默認是一個相對路徑而不是絕對路徑。 – mszalbach
今日英雄!有用!。非常感謝。我已經在玩「output.publicPath」和「 」了,我可以發誓我以前嘗試過,但沒有成功。 –
Smoose28